acts_as_shellscript_executable 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 190be56029b641566b7aad1e32156a01f482df48
4
- data.tar.gz: a81c819d7d98661b72fde5ba7b39963506eabd5d
3
+ metadata.gz: 030e8454c0d6d951be268f756c079181261df705
4
+ data.tar.gz: 199e6144126b46ee7cab835d06eee8c4c9798835
5
5
  SHA512:
6
- metadata.gz: 8acbe54b17e19cabb50f8aacac224bbc66cc69e70b428d090f8db334bcc3a7a8a154180a6bf480b30ee4174f557ee96ecc22891e44d14bb2cf603ced3373bd45
7
- data.tar.gz: 5b0554b894a5467f6a9a3c038b61e9c7dc4a07395d61c538a097786c0486a733b7ff4405c83899990c32a854e7f9c39ddbdd3c357f847e0e87d15d5afe0fd2ef
6
+ metadata.gz: 12f82a5a9c37ba137bfa7cf2a8c33860fd634a4345fa2e748e21ede214a20ce4930ef69ef34414986166f6c41089e84298261305280074bc52526c17cbd2222d
7
+ data.tar.gz: 04fa8af167cbbbb104eb7ba321a2f91ec4afad6effa9d7eced3d4e8b2a92bad4f97e0b656ea15817e30d39e80fd431fc8d13f61d9f7d53d6826955574f7b2c57
data/README.md CHANGED
@@ -33,7 +33,7 @@ script.save!
33
33
 
34
34
  ## #execute!
35
35
 
36
- * `#execute!(nil)`
36
+ * `#execute!(no args)`
37
37
  * returns scripts stdout of whole of the shellscript
38
38
 
39
39
  * `#execute!(block)`
@@ -45,9 +45,6 @@ script.save!
45
45
  * if `Symbol`, the same name column's value will be evaluated as shellscript
46
46
  * if `String`, the string will be evaluated as shellscript
47
47
 
48
- * `parallel:` (default: `false`)
49
- * if true, the script will run in parallel by using `thread`
50
-
51
48
  * `method:` (default: `execute!`)
52
49
  * the execute method's name
53
50
 
@@ -1,5 +1,3 @@
1
- require 'thread'
2
-
3
1
  module ActiveRecord
4
2
  module Acts
5
3
  module ShellscriptExecutable
@@ -16,15 +14,8 @@ module ActiveRecord
16
14
  def #{configuration[:method]}(&block)
17
15
  script = @@__configuration__[:script]
18
16
  answer = ''
19
- if @@__configuration__[:parallel]
20
- Thread.new do
21
- __execute__(script, answer, block)
22
- end
23
- block_given? ? nil : answer
24
- else
25
- __execute__(script, answer, block)
26
- block_given? ? nil : answer
27
- end
17
+ __execute__(script, answer, block)
18
+ block_given? ? nil : answer
28
19
  end
29
20
  EOV
30
21
 
@@ -1,7 +1,7 @@
1
1
  module ActiveRecord
2
2
  module Acts
3
3
  module ShellscriptExecutable
4
- VERSION = '0.0.1'
4
+ VERSION = '0.0.2'
5
5
  end
6
6
  end
7
7
  end
@@ -38,40 +38,6 @@ describe ActiveRecord::Base do
38
38
  end
39
39
  end
40
40
 
41
- describe 'given option parallel' do
42
- context 'given option {script: :script, parallel: false}' do
43
- before do
44
- class Script < ActiveRecord::Base
45
- acts_as_shellscript_executable script: :script, parallel: false
46
- end
47
- end
48
-
49
- it do
50
- script = Script.create
51
- script.script = 'echo $PPID'
52
- expect(script.execute!).to eq "#{Process.pid}\n"
53
- end
54
- end
55
-
56
- context 'given option {script: :script, parallel: true}' do
57
- before do
58
- class Script < ActiveRecord::Base
59
- acts_as_shellscript_executable script: :script, parallel: true
60
- end
61
- end
62
-
63
- it do
64
- script = Script.create
65
- script.script = "sleep 1\necho $PPID"
66
- result = script.execute!
67
-
68
- expect(result).to eq('')
69
- sleep 1.5
70
- expect(result).to eq("#{Process.pid}\n")
71
- end
72
- end
73
- end
74
-
75
41
  context 'given option { script: :script2 }' do
76
42
  before do
77
43
  class Script < ActiveRecord::Base
@@ -116,31 +82,6 @@ describe ActiveRecord::Base do
116
82
  end
117
83
  end
118
84
 
119
- context 'given option {script: "echo 1\nsleep 1\necho 2" parallel: true}' do
120
- before do
121
- class Script < ActiveRecord::Base
122
- acts_as_shellscript_executable \
123
- script: "echo 1\nsleep 1\necho 2", parallel: true
124
- end
125
- end
126
-
127
- describe 'block given' do
128
- it do
129
- script = Script.create
130
- watcher = []
131
-
132
- retval = script.execute! do |each_line_result|
133
- watcher << each_line_result
134
- end
135
-
136
- sleep 2
137
-
138
- expect(retval).to be_nil
139
- expect(watcher).to eq ["1\n", '', "2\n"]
140
- end
141
- end
142
- end
143
-
144
85
  context 'given option {script: "echo 1\necho 2"}' do
145
86
  before do
146
87
  class Script < ActiveRecord::Base
@@ -163,30 +104,5 @@ describe ActiveRecord::Base do
163
104
  end
164
105
  end
165
106
  end
166
-
167
- context 'given option {method: :awesome!}' do
168
- before do
169
- class Script < ActiveRecord::Base
170
- acts_as_shellscript_executable \
171
- method: :awesome!, script: "echo 1\nsleep 1\necho 2", parallel: true
172
- end
173
- end
174
-
175
- describe 'block given' do
176
- it do
177
- script = Script.create
178
- watcher = []
179
-
180
- retval = script.awesome! do |each_line_result|
181
- watcher << each_line_result
182
- end
183
-
184
- sleep 2
185
-
186
- expect(retval).to be_nil
187
- expect(watcher).to eq ["1\n", '', "2\n"]
188
- end
189
- end
190
- end
191
107
  end
192
108
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts_as_shellscript_executable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - hoshinotsuyoshi