Module: Servactory::TestKit::Rspec::Matchers::Concerns::ValueComparison

Included in:
Base::Submatcher
Defined in:
lib/servactory/test_kit/rspec/matchers/concerns/value_comparison.rb

Overview

Concern providing value comparison methods for submatchers.

## Purpose

ValueComparison provides flexible comparison methods that handle various types of expected values including RSpec matchers, classes (for type checking), arrays, and plain values.

## Usage

Include in submatcher classes:

“‘ruby class DefaultSubmatcher < Base::Submatcher

include Concerns::ValueComparison

def passes?
  values_match?(@expected_default, fetch_option(:default))
end

end “‘

## Comparison Rules

  • RSpec matchers (respond_to :matches?) - delegates to matcher

  • Classes - checks if actual is_a?(expected)

  • Arrays - element-wise recursive comparison

  • Other values - uses equality (==)

Defined Under Namespace

Modules: InstanceMethods

Class Method Summary collapse

Class Method Details

.included(base) ⇒ void

This method returns an undefined value.

Includes InstanceMethods in the including class.

Parameters:

  • base (Class)

    The class including this concern



41
42
43
# File 'lib/servactory/test_kit/rspec/matchers/concerns/value_comparison.rb', line 41

def self.included(base)
  base.include(InstanceMethods)
end