Sha256: 2d0efc934db209a7cbc2a5332901e8d65c9440df8cede9b5f85e318cf764a3df

Contents?: true

Size: 1.92 KB

Versions: 44

Compression:

Stored size: 1.92 KB

Contents

require File.expand_path('../../test_helper', __FILE__)

require 'mocha/return_values'

class ReturnValuesTest < Test::Unit::TestCase

  include Mocha

  def test_should_return_nil
    values = ReturnValues.new
    assert_nil values.next
  end

  def test_should_keep_returning_nil
    values = ReturnValues.new
    values.next
    assert_nil values.next
    assert_nil values.next
  end

  def test_should_return_evaluated_single_return_value
    values = ReturnValues.new(SingleReturnValue.new('value'))
    assert_equal 'value', values.next
  end

  def test_should_keep_returning_evaluated_single_return_value
    values = ReturnValues.new(SingleReturnValue.new('value'))
    values.next
    assert_equal 'value', values.next
    assert_equal 'value', values.next
  end

  def test_should_return_consecutive_evaluated_single_return_values
    values = ReturnValues.new(SingleReturnValue.new('value_1'), SingleReturnValue.new('value_2'))
    assert_equal 'value_1', values.next
    assert_equal 'value_2', values.next
  end

  def test_should_keep_returning_last_of_consecutive_evaluated_single_return_values
    values = ReturnValues.new(SingleReturnValue.new('value_1'), SingleReturnValue.new('value_2'))
    values.next
    values.next
    assert_equal 'value_2', values.next
    assert_equal 'value_2', values.next
  end

  def test_should_build_single_return_values_for_each_values
    values = ReturnValues.build('value_1', 'value_2', 'value_3').values
    assert_equal 'value_1', values[0].evaluate
    assert_equal 'value_2', values[1].evaluate
    assert_equal 'value_3', values[2].evaluate
  end

  def test_should_combine_two_sets_of_return_values
    values_1 = ReturnValues.build('value_1')
    values_2 = ReturnValues.build('value_2a', 'value_2b')
    values = (values_1 + values_2).values
    assert_equal 'value_1', values[0].evaluate
    assert_equal 'value_2a', values[1].evaluate
    assert_equal 'value_2b', values[2].evaluate
  end

end

Version data entries

44 entries across 36 versions & 3 rubygems

Version Path
challah-1.0.0.beta3 vendor/bundle/gems/mocha-0.13.3/test/unit/return_values_test.rb
mocha-0.14.0.alpha test/unit/return_values_test.rb
challah-1.0.0.beta2 vendor/bundle/gems/mocha-0.13.3/test/unit/return_values_test.rb
challah-1.0.0.beta vendor/bundle/gems/mocha-0.13.3/test/unit/return_values_test.rb
mocha-0.13.3 test/unit/return_values_test.rb
mocha-0.12.10 test/unit/return_values_test.rb
mocha-0.12.9 test/unit/return_values_test.rb
mocha-0.13.2 test/unit/return_values_test.rb
mocha-0.12.8 test/unit/return_values_test.rb
mocha-0.13.1 test/unit/return_values_test.rb
challah-rolls-0.2.0 vendor/bundle/gems/mocha-0.12.3/test/unit/return_values_test.rb
challah-rolls-0.2.0 vendor/bundle/gems/mocha-0.12.2/test/unit/return_values_test.rb
challah-rolls-0.2.0 vendor/bundle/gems/mocha-0.13.0/test/unit/return_values_test.rb
challah-rolls-0.2.0 vendor/bundle/gems/challah-0.8.0.pre/vendor/bundle/gems/mocha-0.12.2/test/unit/return_values_test.rb
challah-rolls-0.2.0 vendor/bundle/gems/challah-0.8.3/vendor/bundle/gems/mocha-0.12.3/test/unit/return_values_test.rb
challah-rolls-0.2.0 vendor/bundle/gems/challah-0.8.3/vendor/bundle/gems/mocha-0.13.0/test/unit/return_values_test.rb
challah-0.8.3 vendor/bundle/gems/mocha-0.13.0/test/unit/return_values_test.rb
challah-0.8.3 vendor/bundle/gems/mocha-0.12.3/test/unit/return_values_test.rb
mocha-0.13.0 test/unit/return_values_test.rb
mocha-0.12.7 test/unit/return_values_test.rb