Sha256: 05b08cc55a90a5964ed8124dd0e61c6127c05db397a813f07737ae9b6dfa578d

Contents?: true

Size: 1.49 KB

Versions: 14

Compression:

Stored size: 1.49 KB

Contents

module MockDefinitionCreatorHelpers
  include DoubleDefinitionCreatorHelpers

  def expect_that_double_can_be_defined_without_block
    _, _, return_value =
      build_object_with_doubled_method_which_is_called('value')
    expect(return_value).to eq nil
  end

  def expect_that_double_sets_implementation(&block)
    _, _, return_value =
      build_object_with_doubled_method_which_is_called('old value', -> { 'new value' }, &block)
    expect(return_value).to eq 'new value'
  end

  def expect_that_double_sets_implementation_and_resets(&block)
    object, method_name, return_value =
      build_object_with_doubled_method_which_is_reset_and_called('old value', -> { 'new value' }, &block)

    if methods_being_doubled_exist_already?
      # This doesn't work quite yet - see btakita#44
      #expect(object).not_to respond_to(method_name)
    else
      expect(return_value).to eq 'old value'
    end
  end

  def expect_that_double_sets_value(&block)
    _, _, return_value =
      build_object_with_doubled_method_which_is_called('old value', 'new value', &block)
    expect(return_value).to eq 'new value'
  end

  def expect_that_double_sets_value_and_resets(&block)
    _, _, return_value =
      build_object_with_doubled_method_which_is_reset_and_called('old value', 'new value', &block)

    if methods_being_doubled_exist_already?
      # This doesn't work quite yet - see btakita#44
      #expect(object).not_to respond_to(method_name)
    else
      expect(return_value).to eq 'old value'
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
rr-3.1.1 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.1.0 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.9 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.8 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.7 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.6 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.5 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.4 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.3 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.2 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.1 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-3.0.0 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-1.2.1 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb
rr-1.2.0 spec/suites/rspec_2/support/mixins/mock_definition_creator_helpers.rb