spec/worker_spec.rb in narou-2.6.1 vs spec/worker_spec.rb in narou-2.7.0
- old
+ new
@@ -39,16 +39,35 @@
@worker.push(&block1)
@worker.push(&block2)
end
it do
- Thread.pass # 確実にWorkerスレッドが実行されるように
+ # 確実にWorkerスレッドが実行されるように
+ Thread.pass
+ sleep 0.001
expect(@result1).to be true
expect(@result2).to be true
end
end
- it do
+ it "canceling" do
+ @worker.stop
+ expect(@worker.canceled?).to be_falsey
+ _execute = false
+ expect(@worker.size).to be 0
+ @worker.push(&->{ _execute = true })
+ expect(@worker.size).to be 1
+ @worker.cancel
+ expect(@worker.canceled?).to be_truthy
+ @worker.start
+ Thread.pass
+ expect(@worker.running?).to be_truthy
+ expect(@worker.canceled?).to be_falsey
+ expect(_execute).to be false
+ expect(@worker.size).to be 0
+ end
+
+ it "stoping" do
@worker.stop
expect(@worker.running?).to be false
end
end
end