Module: RSpec::SleepingKingStudios::Matchers::Macros

Included in:
RSpec::SleepingKingStudios::Matchers
Defined in:
lib/rspec/sleeping_king_studios/matchers/macros.rb,
lib/rspec/sleeping_king_studios/matchers/core/construct.rb,
lib/rspec/sleeping_king_studios/matchers/core/be_boolean.rb,
lib/rspec/sleeping_king_studios/matchers/built_in/include.rb,
lib/rspec/sleeping_king_studios/matchers/core/have_reader.rb,
lib/rspec/sleeping_king_studios/matchers/core/have_writer.rb,
lib/rspec/sleeping_king_studios/matchers/core/alias_method.rb,
lib/rspec/sleeping_king_studios/matchers/core/have_constant.rb,
lib/rspec/sleeping_king_studios/matchers/core/have_property.rb,
lib/rspec/sleeping_king_studios/matchers/built_in/be_kind_of.rb,
lib/rspec/sleeping_king_studios/matchers/built_in/respond_to.rb,
lib/rspec/sleeping_king_studios/matchers/core/have_predicate.rb,
lib/rspec/sleeping_king_studios/matchers/core/delegate_method.rb,
lib/rspec/sleeping_king_studios/matchers/active_model/have_errors.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.alias_matcher(new_name, old_name, options = {}, &description_override) ⇒ Object

See Also:

  • Matchers::alias_matcher


8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/rspec/sleeping_king_studios/matchers/macros.rb', line 8

def self.alias_matcher(new_name, old_name, options = {}, &description_override)
  description_override ||= if defined?(RSpec::Matchers::Pretty)
    ->(str) { str.gsub(RSpec::Matchers::Pretty.split_words(old_name), RSpec::Matchers::Pretty.split_words(new_name)) }
  elsif defined?(RSpec::Matchers::EnglishPhrasing)
    ->(str) { str.gsub(RSpec::Matchers::EnglishPhrasing.split_words(old_name), RSpec::Matchers::EnglishPhrasing.split_words(new_name)) }
  else
    ->(str) { str }
  end # if-elsif-else

  klass = (options.is_a?(Hash) ? options[:klass] : nil) || RSpec::Matchers::AliasedMatcher
  define_method(new_name) do |*args, &block|
    matcher = __send__(old_name, *args, &block)

    klass.new(matcher, description_override)
  end # define_method
end

Instance Method Details

#a_booleanObject



16
17
18
# File 'lib/rspec/sleeping_king_studios/matchers/core/be_boolean.rb', line 16

alias_matcher :a_boolean, :be_boolean do |description|
  'true or false'
end

#alias_method(expected) ⇒ Object



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/core/alias_method.rb', line 8

def alias_method expected
  RSpec::SleepingKingStudios::Matchers::Core::AliasMethodMatcher.new expected
end

#be_booleanObject Also known as: be_bool



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/core/be_boolean.rb', line 8

def be_boolean
  RSpec::SleepingKingStudios::Matchers::Core::BeBooleanMatcher.new
end

#be_kind_of(expected) ⇒ Object Also known as: be_a



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/built_in/be_kind_of.rb', line 8

def be_kind_of expected
  RSpec::SleepingKingStudios::Matchers::BuiltIn::BeAKindOfMatcher.new expected
end

#constructObject Also known as: be_constructible



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/core/construct.rb', line 8

def construct
  RSpec::SleepingKingStudios::Matchers::Core::ConstructMatcher.new
end

#delegate_method(*method_names) ⇒ Object



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/core/delegate_method.rb', line 8

def delegate_method *method_names
  RSpec::SleepingKingStudios::Matchers::Core::DelegateMethodMatcher.new *method_names
end

#have_constant(expected) ⇒ Object



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/core/have_constant.rb', line 8

def have_constant expected
  RSpec::SleepingKingStudios::Matchers::Core::HaveConstantMatcher.new expected
end

#have_errorsObject



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/active_model/have_errors.rb', line 8

def have_errors
  RSpec::SleepingKingStudios::Matchers::ActiveModel::HaveErrorsMatcher.new
end

#have_immutable_constant(expected) ⇒ Object



13
14
15
# File 'lib/rspec/sleeping_king_studios/matchers/core/have_constant.rb', line 13

def have_immutable_constant expected
  have_constant(expected).immutable
end

#have_predicate(expected) ⇒ Object



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/core/have_predicate.rb', line 8

def have_predicate expected
  RSpec::SleepingKingStudios::Matchers::Core::HavePredicateMatcher.new expected
end

#have_property(expected) ⇒ Object



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/core/have_property.rb', line 8

def have_property expected
  RSpec::SleepingKingStudios::Matchers::Core::HavePropertyMatcher.new expected
end

#have_reader(expected) ⇒ Object



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/core/have_reader.rb', line 8

def have_reader expected
  RSpec::SleepingKingStudios::Matchers::Core::HaveReaderMatcher.new expected
end

#have_writer(expected) ⇒ Object



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/core/have_writer.rb', line 8

def have_writer expected
  RSpec::SleepingKingStudios::Matchers::Core::HaveWriterMatcher.new expected
end

#include(*expected, &block) ⇒ Object



8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/built_in/include.rb', line 8

def include *expected, &block
  RSpec::SleepingKingStudios::Matchers::BuiltIn::IncludeMatcher.new *expected, &block
end

#respond_to(*expected) ⇒ Object

See Also:

  • BuiltIn::RespondToMatcher#matches?


8
9
10
# File 'lib/rspec/sleeping_king_studios/matchers/built_in/respond_to.rb', line 8

def respond_to *expected
  RSpec::SleepingKingStudios::Matchers::BuiltIn::RespondToMatcher.new *expected
end