Sha256: ca44f13b53c6de327e22a813267937b32cf33713184cab3b8f5c9eb321abc4f8

Contents?: true

Size: 1.94 KB

Versions: 30

Compression:

Stored size: 1.94 KB

Contents

require File.join(File.dirname(__FILE__), "acceptance_test_helper")
require 'mocha'

class OptionalParameterMatcherTest < Test::Unit::TestCase
  
  include AcceptanceTest
  
  def setup
    setup_acceptance_test
  end
  
  def teardown
    teardown_acceptance_test
  end
  
  def test_should_pass_if_all_required_parameters_match_and_no_optional_parameters_are_supplied
    test_result = run_test do
      mock = mock()
      mock.expects(:method).with(1, 2, optionally(3, 4))
      mock.method(1, 2)
    end
    assert_passed(test_result)
  end

  def test_should_pass_if_all_required_and_optional_parameters_match_and_some_optional_parameters_are_supplied
    test_result = run_test do
      mock = mock()
      mock.expects(:method).with(1, 2, optionally(3, 4))
      mock.method(1, 2, 3)
    end
    assert_passed(test_result)
  end

  def test_should_pass_if_all_required_and_optional_parameters_match_and_all_optional_parameters_are_supplied
    test_result = run_test do
      mock = mock()
      mock.expects(:method).with(1, 2, optionally(3, 4))
      mock.method(1, 2, 3, 4)
    end
    assert_passed(test_result)
  end

  def test_should_fail_if_all_required_and_optional_parameters_match_but_too_many_optional_parameters_are_supplied
    test_result = run_test do
      mock = mock()
      mock.expects(:method).with(1, 2, optionally(3, 4))
      mock.method(1, 2, 3, 4, 5)
    end
    assert_failed(test_result)
  end

  def test_should_fail_if_all_required_parameters_match_but_some_optional_parameters_do_not_match
    test_result = run_test do
      mock = mock()
      mock.expects(:method).with(1, 2, optionally(3, 4))
      mock.method(1, 2, 4)
    end
    assert_failed(test_result)
  end

  def test_should_fail_if_all_required_parameters_match_but_no_optional_parameters_match
    test_result = run_test do
      mock = mock()
      mock.expects(:method).with(1, 2, optionally(3, 4))
      mock.method(1, 2, 4, 5)
    end
    assert_failed(test_result)
  end

end

Version data entries

30 entries across 30 versions & 6 rubygems

Version Path
floehopper-mocha-0.9.3.20081220175348 test/acceptance/optional_parameters_test.rb
floehopper-mocha-0.9.3.20081230175553 test/acceptance/optional_parameters_test.rb
floehopper-mocha-0.9.4.20090128164727 test/acceptance/optional_parameters_test.rb
floehopper-mocha-0.9.5.20090201123802 test/acceptance/optional_parameters_test.rb
gsterndale-warrant-0.2.0 test/rails_root/vendor/gems/mocha-0.9.4/test/acceptance/optional_parameters_test.rb
gsterndale-warrant-0.3.0 test/rails_root/vendor/gems/mocha-0.9.4/test/acceptance/optional_parameters_test.rb
hashrocket-clearance-0.4.0 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
hashrocket-clearance-0.4.1 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
hashrocket-clearance-0.4.2 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
hashrocket-clearance-0.4.3 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
thewoolleyman-mocha-0.9.3.20081219131457 test/acceptance/optional_parameters_test.rb
thoughtbot-clearance-0.2.2 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
thoughtbot-clearance-0.2.3 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
thoughtbot-clearance-0.2.4 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
thoughtbot-clearance-0.2.5 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
thoughtbot-clearance-0.2.6 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
thoughtbot-clearance-0.2.7 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
thoughtbot-clearance-0.2.8 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
thoughtbot-clearance-0.2.9 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb
thoughtbot-clearance-0.3.0 test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb