1
0
Fork 0
mirror of https://github.com/thoughtbot/factory_bot.git synced 2022-11-09 11:43:51 -05:00

Refactor null_object_spec.rb to conform to Let's Not style (#1348)

This commit is contained in:
Richie Thomas 2019-10-23 15:22:53 -07:00 committed by GitHub
parent 877646eeac
commit c62ca43d17
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,20 +1,22 @@
describe FactoryBot::NullObject do describe FactoryBot::NullObject do
let(:methods_to_respond_to) { %w[id age name admin?] }
let(:methods_to_not_respond_to) { %w[email date_of_birth title] }
subject { FactoryBot::NullObject.new(methods_to_respond_to) }
it "responds to the given methods" do it "responds to the given methods" do
methods_to_respond_to = %w[id age name admin?]
null_object = FactoryBot::NullObject.new(methods_to_respond_to)
methods_to_respond_to.each do |method_name| methods_to_respond_to.each do |method_name|
expect(subject.__send__(method_name)).to be_nil expect(null_object.__send__(method_name)).to be_nil
expect(subject).to respond_to(method_name) expect(null_object).to respond_to(method_name)
end end
end end
it "does not respond to other methods" do it "does not respond to other methods" do
methods_to_respond_to = %w[id age name admin?]
methods_to_not_respond_to = %w[email date_of_birth title]
null_object = FactoryBot::NullObject.new(methods_to_respond_to)
methods_to_not_respond_to.each do |method_name| methods_to_not_respond_to.each do |method_name|
expect { subject.__send__(method_name) }.to raise_error(NoMethodError) expect { null_object.__send__(method_name) }.to raise_error(NoMethodError)
expect(subject).not_to respond_to(method_name) expect(null_object).not_to respond_to(method_name)
end end
end end
end end