class TestStream
Public Instance Methods
test_collection_stream()
click to toggle source
# File test/teststream.rb, line 99 def test_collection_stream s = new_collection_stream assert_equal([1, 2, 3, 4, 5], s.entries) assert(s.at_end?) assert_raises(Stream::EndOfStreamException) {s.forward} assert_equal(5, s.backward) assert_equal(5, s.forward) assert_equal(5, s.current) assert_equal(s, s.peek) s.set_to_begin assert(s.at_beginning?) assert_raises(Stream::EndOfStreamException) {s.backward} assert_equal(s, s.current) assert_equal(1, s.peek) assert_equal(1, s.forward) assert_equal(1, s.current) assert_equal(2, s.peek) # move_forward_until assert_equal(4, s.move_forward_until { |x| x > 3 }) assert_equal(nil, s.move_forward_until { |x| x < 3 }) assert(s.at_end?) s.set_to_begin assert_equal(nil, s.move_forward_until { |x| x > 6 }) end
test_enumerable()
click to toggle source
# File test/teststream.rb, line 93 def test_enumerable s = new_collection_stream assert_equal([2, 4, 6, 8, 10], s.collect {|x| x*2}.entries) assert_equal([2,4],s.select {|x| x[0]== 0})# even numbers end
test_enumerable_protocol()
click to toggle source
# File test/teststream.rb, line 158 def test_enumerable_protocol s = [1, 2, 3, 4, 5].create_stream assert(s.include?(2)) assert_equal(3,s.detect {|x| x > 2}) assert_equal(nil,s.detect {|x| x < 0}) assert_equal([1,2],s.find_all {|x| x < 3}) end
test_filtered_stream()
click to toggle source
# File test/teststream.rb, line 142 def test_filtered_stream [(1..6).create_stream.filtered {|x| x % 2 == 0 }].each do |s| standard_tests_for(s) end end
test_for_examples_reversed()
click to toggle source
# File test/teststream.rb, line 133 def test_for_examples_reversed all_examples.each do |exampleStream| assert_equal(exampleStream.entries.reverse, exampleStream.reverse.entries) assert_equal(exampleStream.entries, exampleStream.reverse.reverse.entries) standard_tests_for(exampleStream.reverse) standard_tests_for(exampleStream.reverse.reverse) end end
test_interval_stream()
click to toggle source
# File test/teststream.rb, line 148 def test_interval_stream s = Stream::IntervalStream.new 6 standard_tests_for(s) assert_equal([0, 1, 2, 3, 4, 5], s.entries) s.increment_stop assert(!s.at_end?) assert_equal([0, 1, 2, 3, 4, 5, 6], s.entries) standard_tests_for(s) end
test_modified_stream()
click to toggle source
# File test/teststream.rb, line 166 def test_modified_stream a = [1,2,3] assert_equal([2,3],a.create_stream.remove_first.to_a) assert_equal([1,2],a.create_stream.remove_last.to_a) assert_raises(Stream::EndOfStreamException) { [1].create_stream.remove_last.forward } assert_raises(Stream::EndOfStreamException) { [1].create_stream.remove_first.forward } end
test_standard_for_examples()
click to toggle source
# File test/teststream.rb, line 127 def test_standard_for_examples all_examples.each do |exampleStream| standard_tests_for(exampleStream) end end