MCPcopy Create free account
hub / github.com/apache/arrow / MapArrayBuilderTest

Class MapArrayBuilderTest

ruby/red-arrow/test/test-map-array-builder.rb:18–110  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

16# under the License.
17
18class MapArrayBuilderTest < Test::Unit::TestCase
19 def setup
20 key_type = Arrow::StringDataType.new
21 item_type = Arrow::Int16DataType.new
22 data_type = Arrow::MapDataType.new(key_type, item_type)
23 @builder = Arrow::MapArrayBuilder.new(data_type)
24 end
25
26 sub_test_case("#append_value") do
27 test("nil") do
28 @builder.append_value(nil)
29 array = @builder.finish
30 assert_equal([nil], array.collect {|value| value})
31 end
32
33 test("Hash") do
34 @builder.append_value({"a" => 0, "b" => 1})
35 @builder.append_value({"c" => 0, "d" => 1})
36 array = @builder.finish
37 assert_equal([
38 {"a" => 0, "b" => 1},
39 {"c" => 0, "d" => 1}
40 ],
41 array.collect {|value| value})
42 end
43
44 test("#each") do
45 @builder.append_value([["a", 0], ["b", 1]])
46 @builder.append_value([["c", 0], ["d", 1]])
47 array = @builder.finish
48 assert_equal([
49 {"a" => 0, "b" => 1},
50 {"c" => 0, "d" => 1}
51 ],
52 array.collect {|value| value})
53 end
54 end
55
56 sub_test_case("#append_values") do
57 test("[nil]") do
58 @builder.append_values([nil])
59 array = @builder.finish
60 assert_equal([nil], array.collect {|value| value})
61 end
62
63 test("[Hash]") do
64 @builder.append_values([{"a" => 0, "b" => 1}, {"c" => 0, "d" => 1}])
65 array = @builder.finish
66 assert_equal([
67 {"a" => 0, "b" => 1},
68 {"c" => 0, "d" => 1}
69 ],
70 array.collect {|value| value})
71 end
72
73 test("[#each]") do
74 @builder.append_values([[["a", 0], ["b", 1]], [["c", 0], ["d", 1]]])
75 array = @builder.finish

Callers

nothing calls this directly

Calls 4

testFunction · 0.85
append_valueMethod · 0.45
finishMethod · 0.45
append_valuesMethod · 0.45

Tested by

no test coverage detected