Class: ConvenientService::RSpec::PrimitiveMatchers::Classes::SingletonPrependModule

Inherits:
Object
  • Object
show all
Defined in:
lib/convenient_service/rspec/primitive_matchers/classes/singleton_prepend_module.rb

Instance Method Summary collapse

Constructor Details

#initialize(mod) ⇒ void

Parameters:

  • mod (Module)


32
33
34
# File 'lib/convenient_service/rspec/primitive_matchers/classes/singleton_prepend_module.rb', line 32

def initialize(mod)
  @mod = mod
end

Instance Method Details

#descriptionString

Returns:

  • (String)


52
53
54
# File 'lib/convenient_service/rspec/primitive_matchers/classes/singleton_prepend_module.rb', line 52

def description
  "`singleton_class.prepend` module `#{mod}`"
end

#failure_messageString

Returns:

  • (String)


59
60
61
# File 'lib/convenient_service/rspec/primitive_matchers/classes/singleton_prepend_module.rb', line 59

def failure_message
  "expected `#{klass}` to `singleton_class.prepend` module `#{mod}`"
end

#failure_message_when_negatedString

Returns:

  • (String)


66
67
68
# File 'lib/convenient_service/rspec/primitive_matchers/classes/singleton_prepend_module.rb', line 66

def failure_message_when_negated
  "expected `#{klass}` NOT to `singleton_class.prepend` module `#{mod}`"
end

#matches?(klass) ⇒ Boolean

Parameters:

  • klass (Class, Module)

Returns:

  • (Boolean)


43
44
45
46
47
# File 'lib/convenient_service/rspec/primitive_matchers/classes/singleton_prepend_module.rb', line 43

def matches?(klass)
  @klass = klass

  klass.singleton_class.ancestors.take_while { |ancestor| ancestor != klass.singleton_class }.include?(mod)
end