Varying the Algorithm with the Template Method : Unit Testing « Unit Test « Ruby






Varying the Algorithm with the Template Method


require 'test/unit'

def empty?(s)
  s.length == 0
end


class EmptyTest < Test::Unit::TestCase
  def setup
    @empty_string = ''
    @one_char_string = 'X'
    @long_string = 'this is a test'
    @empty_array = []
    @one_element_array = [1]
    @long_array = [1, 2, 3, 4, 5, 6]
  end

  def test_empty_on_strings
    assert empty?(@empty_string)
    assert ! empty?(@one_char_string)
    assert ! empty?(@long_string)
  end

  def test_empty_on_arrays
    assert empty?(@empty_array)
    assert ! empty?(@one_element_array)
    assert ! empty?(@long_array)
  end
end


# $ ruby empty_test.rb

 








Related examples in the same category

1.The Philosophy of Test-Driven Development
2.Unit Testing: assert_equal
3.Writing Unit Tests
4.Test case setup
5.Unit Testing: hard code value
6.Test the values in an array
7.Assert exception raised
8.Structuring Tests
9.A test case for collection class