diff options
author | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-06-29 14:35:09 +0000 |
---|---|---|
committer | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-06-29 14:35:09 +0000 |
commit | d55cd34ba8680310fb07c2f5c1c6a27b4902865d (patch) | |
tree | abc35065c29846042d84e71b6bf500df5cd76d68 /spec/mspec/lib/mspec/runner | |
parent | 0a11abfc7ec92fcf4eb9e973c68588f079fdb60d (diff) |
Update to ruby/mspec@021a119
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'spec/mspec/lib/mspec/runner')
-rw-r--r-- | spec/mspec/lib/mspec/runner/evaluate.rb | 8 | ||||
-rw-r--r-- | spec/mspec/lib/mspec/runner/mspec.rb | 21 | ||||
-rw-r--r-- | spec/mspec/lib/mspec/runner/object.rb | 16 | ||||
-rw-r--r-- | spec/mspec/lib/mspec/runner/shared.rb | 14 |
4 files changed, 33 insertions, 26 deletions
diff --git a/spec/mspec/lib/mspec/runner/evaluate.rb b/spec/mspec/lib/mspec/runner/evaluate.rb index fded84421f..ecf7460a90 100644 --- a/spec/mspec/lib/mspec/runner/evaluate.rb +++ b/spec/mspec/lib/mspec/runner/evaluate.rb @@ -1,4 +1,6 @@ class SpecEvaluate + include MSpecMatchers + def self.desc=(desc) @desc = desc end @@ -47,8 +49,6 @@ class SpecEvaluate end end -class Object - def evaluate(str, desc=nil, &block) - SpecEvaluate.new(str, desc).define(&block) - end +def evaluate(str, desc=nil, &block) + SpecEvaluate.new(str, desc).define(&block) end diff --git a/spec/mspec/lib/mspec/runner/mspec.rb b/spec/mspec/lib/mspec/runner/mspec.rb index 0ff0de36ca..8f9c7a602f 100644 --- a/spec/mspec/lib/mspec/runner/mspec.rb +++ b/spec/mspec/lib/mspec/runner/mspec.rb @@ -2,6 +2,10 @@ require 'mspec/runner/context' require 'mspec/runner/exception' require 'mspec/runner/tag' +class MSpecEnv + include MSpec +end + module MSpec @exit = nil @@ -53,11 +57,19 @@ module MSpec if ENV["MSPEC_MULTI"] STDOUT.print "." STDOUT.flush - while (file = STDIN.gets.chomp) != "QUIT" + while file = STDIN.gets and file = file.chomp + return if file == "QUIT" yield file - STDOUT.print "." - STDOUT.flush + begin + STDOUT.print "." + STDOUT.flush + rescue Errno::EPIPE + # The parent died + exit 1 + end end + # The parent closed the connection without QUIT + abort "the parent did not send QUIT" else return unless files = retrieve(:files) shuffle files if randomize? @@ -76,8 +88,7 @@ module MSpec end def self.setup_env - @env = Object.new - @env.extend MSpec + @env = MSpecEnv.new end def self.actions(action, *args) diff --git a/spec/mspec/lib/mspec/runner/object.rb b/spec/mspec/lib/mspec/runner/object.rb index 018e356149..2ea8197165 100644 --- a/spec/mspec/lib/mspec/runner/object.rb +++ b/spec/mspec/lib/mspec/runner/object.rb @@ -1,28 +1,26 @@ class Object - def before(at=:each, &block) + private def before(at=:each, &block) MSpec.current.before at, &block end - def after(at=:each, &block) + private def after(at=:each, &block) MSpec.current.after at, &block end - def describe(mod, msg=nil, options=nil, &block) + private def describe(mod, msg=nil, options=nil, &block) MSpec.describe mod, msg, &block end - def it(msg, &block) + private def it(msg, &block) MSpec.current.it msg, &block end - def it_should_behave_like(desc) + private def it_should_behave_like(desc) MSpec.current.it_should_behave_like desc end - # For ReadRuby compatiability - def doc(*a) - end - alias_method :context, :describe + private :context alias_method :specify, :it + private :specify end diff --git a/spec/mspec/lib/mspec/runner/shared.rb b/spec/mspec/lib/mspec/runner/shared.rb index 336e35f6ac..b606de473b 100644 --- a/spec/mspec/lib/mspec/runner/shared.rb +++ b/spec/mspec/lib/mspec/runner/shared.rb @@ -1,12 +1,10 @@ require 'mspec/runner/mspec' -class Object - def it_behaves_like(desc, meth, obj=nil) - send :before, :all do - @method = meth - @object = obj - end - - send :it_should_behave_like, desc.to_s +def it_behaves_like(desc, meth, obj=nil) + send :before, :all do + @method = meth + @object = obj end + + send :it_should_behave_like, desc.to_s end |