Class: ConvenientService::RSpec::PrimitiveMatchers::Classes::HaveAbstractMethod
- Inherits:
-
Object
- Object
- ConvenientService::RSpec::PrimitiveMatchers::Classes::HaveAbstractMethod
- Defined in:
- lib/convenient_service/rspec/primitive_matchers/classes/have_abstract_method.rb
Instance Method Summary collapse
- #description ⇒ Object
- #failure_message ⇒ Object
- #failure_message_when_negated ⇒ Object
-
#initialize(method_name) ⇒ HaveAbstractMethod
constructor
A new instance of HaveAbstractMethod.
- #matches?(object) ⇒ Boolean
Constructor Details
#initialize(method_name) ⇒ HaveAbstractMethod
Returns a new instance of HaveAbstractMethod.
13 14 15 |
# File 'lib/convenient_service/rspec/primitive_matchers/classes/have_abstract_method.rb', line 13 def initialize(method_name) @method_name = method_name end |
Instance Method Details
#description ⇒ Object
31 32 33 |
# File 'lib/convenient_service/rspec/primitive_matchers/classes/have_abstract_method.rb', line 31 def description "have abstract method `#{method_name}`" end |
#failure_message ⇒ Object
35 36 37 |
# File 'lib/convenient_service/rspec/primitive_matchers/classes/have_abstract_method.rb', line 35 def "expected `#{object.class}` to have abstract method `#{method_name}`" end |
#failure_message_when_negated ⇒ Object
39 40 41 |
# File 'lib/convenient_service/rspec/primitive_matchers/classes/have_abstract_method.rb', line 39 def "expected `#{object.class}` NOT to have abstract method `#{method_name}`" end |
#matches?(object) ⇒ Boolean
17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/convenient_service/rspec/primitive_matchers/classes/have_abstract_method.rb', line 17 def matches?(object) @object = object begin object.__send__(method_name) false rescue ConvenientService::Support::AbstractMethod::Exceptions::AbstractMethodNotOverridden true rescue false end end |