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

Function TestStringDictionaryMakeBuilder

cpp/src/arrow/array/array_dict_test.cc:489–509  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

487
488template <typename BuilderType>
489void TestStringDictionaryMakeBuilder(const std::shared_ptr<DataType>& value_type) {
490 auto dict_array = ArrayFromJSON(value_type, R"(["test", "test2"])");
491 auto dict_type = dictionary(int8(), value_type);
492 auto int_array = ArrayFromJSON(int8(), "[0, 1, 0]");
493 std::unique_ptr<ArrayBuilder> boxed_builder;
494 ASSERT_OK(MakeBuilder(default_memory_pool(), dict_type, &boxed_builder));
495 auto& builder = checked_cast<BuilderType&>(*boxed_builder);
496
497 // Build the dictionary Array
498 ASSERT_OK(builder.Append("test"));
499 ASSERT_OK(builder.Append("test2"));
500 ASSERT_OK(builder.Append("test"));
501
502 std::shared_ptr<Array> result;
503 ASSERT_OK(builder.Finish(&result));
504
505 // Build expected data
506 DictionaryArray expected(dict_type, int_array, dict_array);
507
508 AssertArraysEqual(expected, *result);
509}
510
511TEST(TestStringDictionaryBuilder, MakeBuilder) {
512 TestStringDictionaryMakeBuilder<DictionaryBuilder<StringType>>(utf8());

Callers

nothing calls this directly

Calls 7

ArrayFromJSONFunction · 0.85
default_memory_poolFunction · 0.85
AssertArraysEqualFunction · 0.85
MakeBuilderFunction · 0.70
dictionaryFunction · 0.50
AppendMethod · 0.45
FinishMethod · 0.45

Tested by

no test coverage detected