summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authork0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-10-13 00:38:15 +0000
committerk0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-10-13 00:38:15 +0000
commitcf9cd06b78c49ee12b76b648615ae6e726d3a4fd (patch)
tree0a7035dfda0c918672f47572cdfd3668fd678fe7 /spec
parentcc5154af6da14d5cee75e9842351bcc12abd4093 (diff)
kill_spec.rb: exclude spec unstable on MinGW
like r64991, until we get helpful error logs on worker death or the unstability is fixed. Since mspec worker randomly dies on MinGW, maybe it should have an option to retry worker death. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'spec')
-rw-r--r--spec/ruby/core/thread/kill_spec.rb30
1 files changed, 17 insertions, 13 deletions
diff --git a/spec/ruby/core/thread/kill_spec.rb b/spec/ruby/core/thread/kill_spec.rb
index 2c58475f8f..f932bf5232 100644
--- a/spec/ruby/core/thread/kill_spec.rb
+++ b/spec/ruby/core/thread/kill_spec.rb
@@ -2,20 +2,24 @@ require_relative '../../spec_helper'
require_relative 'fixtures/classes'
require_relative 'shared/exit'
-describe "Thread#kill" do
- it_behaves_like :thread_exit, :kill
-end
+# This spec randomly kills mspec worker like: https://ci.appveyor.com/project/ruby/ruby/builds/19473223/job/f69derxnlo09xhuj
+# TODO: Investigate the cause or at least print helpful logs, and remove this `platform_is_not` guard.
+platform_is_not :mingw do
+ describe "Thread#kill" do
+ it_behaves_like :thread_exit, :kill
+ end
-describe "Thread#kill!" do
- it "needs to be reviewed for spec completeness"
-end
+ describe "Thread#kill!" do
+ it "needs to be reviewed for spec completeness"
+ end
-describe "Thread.kill" do
- it "causes the given thread to exit" do
- thread = Thread.new { sleep }
- Thread.pass while thread.status and thread.status != "sleep"
- Thread.kill(thread).should == thread
- thread.join
- thread.status.should be_false
+ describe "Thread.kill" do
+ it "causes the given thread to exit" do
+ thread = Thread.new { sleep }
+ Thread.pass while thread.status and thread.status != "sleep"
+ Thread.kill(thread).should == thread
+ thread.join
+ thread.status.should be_false
+ end
end
end