Sha256: 4e6a36ddc1594493c133c49c2c82e456da8dc1cfc451e726718e9e16f32b4adb
Contents?: true
Size: 1.88 KB
Versions: 1
Compression:
Stored size: 1.88 KB
Contents
module RSpec describe Expectations do def file_contents_for(lib, filename) # http://rubular.com/r/HYpUMftlG2 path = $LOAD_PATH.find { |p| p.match(/\/rspec-#{lib}(-[a-f0-9]+)?\/lib/) } file = File.join(path, filename) File.read(file) end it 'has an up-to-date caller_filter file' do expectations = file_contents_for("expectations", "rspec/expectations/caller_filter.rb") core = file_contents_for("core", "rspec/core/caller_filter.rb") expect(expectations).to eq(core) end describe '.method_handle_for(object, method_name)' do class UntamperedClass def foo :bar end end class ClassWithMethodOverridden < UntamperedClass def method :baz end end if RUBY_VERSION.to_f > 1.8 class BasicClass < BasicObject def foo :bar end end class BasicClassWithKernel < BasicClass include ::Kernel end end it 'fetches method definitions for vanilla objects' do object = UntamperedClass.new expect(Expectations.method_handle_for(object, :foo).call).to eq :bar end it 'fetches method definitions for objects with method redefined' do object = ClassWithMethodOverridden.new expect(Expectations.method_handle_for(object, :foo).call).to eq :bar end it 'fetches method definitions for basic objects', :if => (RUBY_VERSION.to_i >= 2 && RUBY_ENGINE != 'rbx') do object = BasicClass.new expect(Expectations.method_handle_for(object, :foo).call).to eq :bar end it 'fetches method definitions for basic objects with kernel mixed in', :if => RUBY_VERSION.to_f > 1.8 do object = BasicClassWithKernel.new expect(Expectations.method_handle_for(object, :foo).call).to eq :bar end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rspec-expectations-2.99.0.beta2 | spec/rspec/expectations_spec.rb |