diff options
Diffstat (limited to 'spec/mspec/lib/mspec/matchers')
-rw-r--r-- | spec/mspec/lib/mspec/matchers/block_caller.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/spec/mspec/lib/mspec/matchers/block_caller.rb b/spec/mspec/lib/mspec/matchers/block_caller.rb index 017bce3cb7..4149586747 100644 --- a/spec/mspec/lib/mspec/matchers/block_caller.rb +++ b/spec/mspec/lib/mspec/matchers/block_caller.rb @@ -10,7 +10,11 @@ class BlockingMatcher blocking = false end - while !started and status = thread.status and status != "sleep" + Thread.pass while !started + + # Wait until the Thread status is "sleep" (then it's blocking) + # or nil (the Thread finished execution, it did not block) + while status = thread.status and status != "sleep" Thread.pass end thread.kill |