lib/celluloid/rspec.rb in celluloid-0.17.1.2 vs lib/celluloid/rspec.rb in celluloid-0.17.2

- old
+ new

@@ -1,12 +1,72 @@ +require "dotenv" +require "nenv" + require "celluloid/test" +# To help produce better bug reports in Rubinius +if RUBY_ENGINE == "rbx" + # $DEBUG = true # would be nice if this didn't fail ... :( + require "rspec/matchers" + require "rspec/matchers/built_in/be" +end + +require "rspec/retry" + +module Specs + + CHECK_LOOSE_THREADS = !Nenv.ci? unless defined? CHECK_LOOSE_THREADS + ALLOW_RETRIES = 3 unless defined? ALLOW_RETRIES + ALLOW_SLOW_MAILBOXES = false unless defined? ALLOW_SLOW_MAILBOXES + + INCLUDE_SUPPORT = [ + "env", + "logging", + "sleep_and_wait", + "reset_class_variables", + "crash_checking", + "loose_threads", + "stubbing", + "coverage", + "includer", + "configure_rspec" + ] + + INCLUDE_PATHS = [ + "./spec/support/*.rb", + "./spec/support/examples/*.rb", + "./spec/shared/*.rb" + ] + + MAX_EXECUTION = 13 + MAX_ATTEMPTS = 20 + + TIMER_QUANTUM = 0.05 # Timer accuracy enforced by the tests (50ms) + + BACKTRACE_OMITTED = [ + "rspec-expectations", + "rspec-core", + "rspec-mocks", + "rspec-retry", + "rubysl-thread", + "rubysl-timeout" + ] +end + $CELLULOID_DEBUG = true +# Require but disable, so it has to be explicitly enabled in tests +require "celluloid/probe" +$CELLULOID_MONITORING = false + +Celluloid.shutdown_timeout = 1 + # Load shared examples and test support code for other gems to use. -%w(env logging split_logs sleep_and_wait reset_class_variables crash_checking stubbing coverage includer).each { |f| +Specs::INCLUDE_SUPPORT.each { |f| require "#{File.expand_path('../../../spec/support', __FILE__)}/#{f}.rb" } + +Specs.reset_probe(nil) Dir["#{File.expand_path('../../../spec/support/examples', __FILE__)}/*.rb"].map { |f| require f } Dir["#{File.expand_path('../../../spec/shared', __FILE__)}/*.rb"].map { |f| require f }