aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/plugins/rspec/lib/spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/plugins/rspec/lib/spec.rb')
-rw-r--r--vendor/plugins/rspec/lib/spec.rb36
1 files changed, 30 insertions, 6 deletions
diff --git a/vendor/plugins/rspec/lib/spec.rb b/vendor/plugins/rspec/lib/spec.rb
index 48c12595c..a0fc64750 100644
--- a/vendor/plugins/rspec/lib/spec.rb
+++ b/vendor/plugins/rspec/lib/spec.rb
@@ -1,13 +1,37 @@
-require 'spec/extensions'
require 'spec/version'
require 'spec/matchers'
require 'spec/expectations'
-require 'spec/translator'
-require 'spec/dsl'
+require 'spec/example'
+require 'spec/extensions'
require 'spec/runner'
-class Object
- def metaclass
- class << self; self; end
+if Object.const_defined?(:Test); \
+ require 'spec/interop/test'; \
+end
+
+module Spec
+ class << self
+ def run?
+ @run || rspec_options.examples_run?
+ end
+
+ def run; \
+ return true if run?; \
+ result = rspec_options.run_examples; \
+ @run = true; \
+ result; \
+ end
+ attr_writer :run
+
+ def exit?; \
+ !Object.const_defined?(:Test) || Test::Unit.run?; \
+ end
end
end
+
+at_exit do \
+ unless $! || Spec.run?; \
+ success = Spec.run; \
+ exit success if Spec.exit?; \
+ end \
+end \ No newline at end of file