test/test-array.rb in red-arrow-0.12.0 vs test/test-array.rb in red-arrow-0.13.0
- old
+ new
@@ -22,17 +22,46 @@
assert_equal([true, false, true],
array.to_a)
end
end
- test("#each") do
- array = Arrow::BooleanArray.new([true, false, nil, true])
- assert_equal([true, false, nil, true],
- array.to_a)
- end
+ sub_test_case("instance methods") do
+ def setup
+ @values = [true, false, nil, true]
+ @array = Arrow::BooleanArray.new(@values)
+ end
- test("#[]") do
- array = Arrow::BooleanArray.new([true, false, nil, true])
- assert_equal([true, false, nil, true],
- [array[0], array[1], array[2], array[3]])
+ test("#each") do
+ assert_equal(@values, @array.to_a)
+ end
+
+ sub_test_case("#[]") do
+ test("valid range") do
+ assert_equal(@values,
+ @array.length.times.collect {|i| @array[i]})
+ end
+
+ test("out of range") do
+ assert_nil(@array[@array.length])
+ end
+
+ test("negative index") do
+ assert_equal(@values.last,
+ @array[-1])
+ end
+ end
+
+ sub_test_case("#==") do
+ test("Arrow::Array") do
+ assert do
+ @array == @array
+ end
+ end
+
+ test("not Arrow::Array") do
+ assert do
+ not (@array == 29)
+ end
+ end
+ end
end
end