Sha256: 5b157ef1d93702214dad59ea9e74f0824c7835833b95df79b62d8e205b0f9286
Contents?: true
Size: 1.62 KB
Versions: 1
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
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
inch-0.4.7 | test/unit/evaluation/role/base_test.rb |