Sha256: 1c63f3c4d9b81bcd5a01becfc4f2fa2762e554ca7df62d13837546521e6fbd1e
Contents?: true
Size: 1.62 KB
Versions: 3
Compression:
Stored size: 1.62 KB
Contents
require File.expand_path(File.dirname(__FILE__) + "/../../../test_helper") class MockPrivateRole < ::Inch::Evaluation::Role::Base applicable_if :private? end class MockNotPrivateRole < ::Inch::Evaluation::Role::Base applicable_unless :private? end class MockPublicRole < ::Inch::Evaluation::Role::Base applicable_if { |o| o.public? } end class MockIndifferentRole < ::Inch::Evaluation::Role::Base 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::Base 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
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
inch-0.4.10 | test/unit/evaluation/role/base_test.rb |
inch-0.4.9 | test/unit/evaluation/role/base_test.rb |
inch-0.4.8 | test/unit/evaluation/role/base_test.rb |