mirror of
https://github.com/pry/pry.git
synced 2022-11-09 12:35:05 -05:00

Fixes #1775 (Drop support for Rubinius) I am amazed how many hacks we've had just to support Rubinius. It feels good to be able to remove them and reduce the complexity of the codebase.
57 lines
1.7 KiB
Ruby
57 lines
1.7 KiB
Ruby
require 'bundler/setup'
|
|
Bundler.require :default, :test
|
|
require 'pry/testable'
|
|
require_relative 'spec_helpers/mock_pry'
|
|
require_relative 'spec_helpers/repl_tester'
|
|
|
|
if ENV["COVERAGE"]
|
|
require "simplecov"
|
|
SimpleCov.start
|
|
end
|
|
|
|
class Module
|
|
public :remove_const
|
|
public :remove_method
|
|
end
|
|
|
|
Pad = Class.new do
|
|
include Pry::Config::Behavior
|
|
end.new(nil)
|
|
|
|
# to help with tracking down bugs that cause an infinite loop in the test suite
|
|
if ENV["SET_TRACE_FUNC"]
|
|
set_trace_func proc { |event, file, line, id, binding, classname|
|
|
STDERR.printf "%8s %s:%-2d %10s %8s\n", event, file, line, id, classname
|
|
}
|
|
end
|
|
|
|
RSpec.configure do |config|
|
|
config.expect_with :rspec do |c|
|
|
c.syntax = [:should, :expect]
|
|
end
|
|
|
|
config.before(:each) do
|
|
Pry::Testable.set_testenv_variables
|
|
end
|
|
|
|
config.after(:each) do
|
|
Pry::Testable.unset_testenv_variables
|
|
end
|
|
config.include Pry::Testable::Mockable
|
|
config.include Pry::Testable::Utility
|
|
include Pry::Testable::Evalable
|
|
include Pry::Testable::Variables
|
|
|
|
# Optionally skip a test on specific Ruby engine(s).
|
|
# Please use this feature sparingly! It is better that a feature works than not.
|
|
# Inapplicable features are OK.
|
|
config.before(:each) do |example|
|
|
Pry::Platform.known_engines.each do |engine|
|
|
example.metadata[:expect_failure].to_a.include?(engine) and
|
|
Pry::Platform.public_send(:"#{engine}?") and
|
|
skip("This spec is failing or inapplicable on #{engine}.")
|
|
end
|
|
end
|
|
end
|
|
|
|
puts "Ruby v#{RUBY_VERSION} (#{defined?(RUBY_ENGINE) ? RUBY_ENGINE : "ruby"}), Pry v#{Pry::VERSION}, method_source v#{MethodSource::VERSION}, CodeRay v#{CodeRay::VERSION}, Pry::Slop v#{Pry::Slop::VERSION}"
|