Sha256: 0d080469292477739f5b6c9d21b6712d874310fd2157015425ff78bd5be71ec7
Contents?: true
Size: 1.59 KB
Versions: 2
Compression:
Stored size: 1.59 KB
Contents
require File.expand_path(File.dirname(__FILE__) + "/../../test_helper") class MockPrivateRole < ::Inch::Evaluation::Role applicable_if :private? end class MockNotPrivateRole < ::Inch::Evaluation::Role applicable_unless :private? end class MockPublicRole < ::Inch::Evaluation::Role applicable_if { |o| o.public? } end class MockIndifferentRole < ::Inch::Evaluation::Role def self.applicable?(_object) true end end class MockPrivateObject def private? true end def public? false end end class MockPublicObject def private? false end def public? true end end describe ::Inch::Evaluation::Role do describe ".applicable" do let(:private_object) { MockPrivateObject.new } let(:public_object) { MockPublicObject.new } describe ".applicable_if" do it "should work with a symbol" do assert MockPrivateRole.applicable?(private_object) assert !MockPrivateRole.applicable?(public_object) end it "should work with a block" do assert MockPublicRole.applicable?(public_object) assert MockNotPrivateRole.applicable?(public_object) assert !MockPublicRole.applicable?(private_object) end end describe ".applicable_unless" do it "should work with a block" do assert MockNotPrivateRole.applicable?(public_object) assert !MockNotPrivateRole.applicable?(private_object) end end it "should work by implementing a class method" do assert MockIndifferentRole.applicable?(private_object) assert MockIndifferentRole.applicable?(public_object) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
inch-0.5.0.rc5 | test/unit/evaluation/role_test.rb |
inch-0.5.0.rc4 | test/unit/evaluation/role_test.rb |