jober 0.3.5 → 0.3.27
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 +4 -4
- data/lib/jober/abstract_task.rb +1 -2
- data/lib/jober/version.rb +1 -1
- data/spec/task_loop_spec.rb +22 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 567c60c1c378f26f81a9504ee62d062b2e5d24a8
|
4
|
+
data.tar.gz: 927f44673a76879c1276cf0bafc9d47e8d0ace77
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 03da0d59d6a179824ba02fd25609bfa977bb1562318317bc7676a48edf64d6a1c9c1ff919d7cac890be9e4c463d6354b1527909a3f2b74dce4e1860ecceea0f4
|
7
|
+
data.tar.gz: edc9c8bd869eba4c19466ecafcff23f1616b7e0b92718619da43cb320409177026f69b04dd69f3fe3a47dfea1f76d13451c4c980cc1dd5da7a0ac6ef0ac3f2de
|
data/lib/jober/abstract_task.rb
CHANGED
@@ -50,11 +50,11 @@ class Jober::AbstractTask
|
|
50
50
|
@start_at = Time.now
|
51
51
|
self.class.write_timestamp(:started)
|
52
52
|
run
|
53
|
-
self.class.write_timestamp(:finished)
|
54
53
|
self.class.del_timestamp(:crashed)
|
55
54
|
if @stopped
|
56
55
|
self.class.write_timestamp(:stopped)
|
57
56
|
else
|
57
|
+
self.class.write_timestamp(:finished)
|
58
58
|
self.class.del_timestamp(:stopped)
|
59
59
|
end
|
60
60
|
info "<= end (in #{Time.now - @start_at})"
|
@@ -104,7 +104,6 @@ class Jober::AbstractTask
|
|
104
104
|
|
105
105
|
def stop!
|
106
106
|
@stopped = true
|
107
|
-
self.class.write_timestamp(:stopped)
|
108
107
|
end
|
109
108
|
|
110
109
|
private
|
data/lib/jober/version.rb
CHANGED
data/spec/task_loop_spec.rb
CHANGED
@@ -35,7 +35,7 @@ class Loop3 < Jober::Task
|
|
35
35
|
interval 3
|
36
36
|
def perform
|
37
37
|
c = 0
|
38
|
-
loop { sleep 1; c += 1; break if stopped || c > 4 }
|
38
|
+
loop { sleep 1; c += 1; info { c.to_s }; break if stopped || c > 4 }
|
39
39
|
SO["y"] ||= 0
|
40
40
|
SO["y"] += 1
|
41
41
|
end
|
@@ -105,6 +105,7 @@ describe "Task" do
|
|
105
105
|
end
|
106
106
|
|
107
107
|
describe "task was finished by itself or by stop!" do
|
108
|
+
|
108
109
|
it "if was finished by itself" do
|
109
110
|
l = Loop3.new
|
110
111
|
l.execute
|
@@ -127,6 +128,8 @@ describe "Task" do
|
|
127
128
|
sleep 0.3
|
128
129
|
SO["y"].should == 1
|
129
130
|
|
131
|
+
Loop3.read_timestamp(:finished).should_not be
|
132
|
+
|
130
133
|
# next run should wait for 3 seconds
|
131
134
|
l = Loop3.new
|
132
135
|
t = Thread.new { l.run_loop }
|
@@ -135,6 +138,24 @@ describe "Task" do
|
|
135
138
|
sleep 0.3
|
136
139
|
SO["y"].should == 2
|
137
140
|
end
|
141
|
+
|
142
|
+
it "was restarted in the sleeping phase, should not start imidiately" do
|
143
|
+
l = Loop3.new
|
144
|
+
t = Thread.new { l.run_loop }
|
145
|
+
sleep 6
|
146
|
+
|
147
|
+
# here l in sleeping phase
|
148
|
+
l.stop!
|
149
|
+
SO["y"].should == 1
|
150
|
+
Loop3.read_timestamp(:finished).should be
|
151
|
+
|
152
|
+
l = Loop3.new
|
153
|
+
t = Thread.new { l.run_loop }
|
154
|
+
sleep 1
|
155
|
+
l.stop!
|
156
|
+
sleep 0.3
|
157
|
+
SO["y"].should == 1
|
158
|
+
end
|
138
159
|
end
|
139
160
|
|
140
161
|
it "skip_delay!" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jober
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.27
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- "'Konstantin Makarchev'"
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-04-
|
11
|
+
date: 2015-04-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: redis
|