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

Method TestAppendValues

cpp/src/arrow/array/array_test.cc:3003–3030  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3001
3002 template <typename ExpectedType>
3003 void TestAppendValues() {
3004 using CType = typename TypeTraits<ExpectedType>::CType;
3005 auto type = TypeTraits<ExpectedType>::type_singleton();
3006
3007 std::vector<uint64_t> values(
3008 {0, std::numeric_limits<CType>::min(), std::numeric_limits<CType>::max()});
3009 std::vector<CType> expected_values(
3010 {0, std::numeric_limits<CType>::min(), std::numeric_limits<CType>::max()});
3011 ArrayFromVector<ExpectedType, CType>(expected_values, &expected_);
3012
3013 SetUp();
3014 ASSERT_OK(builder_->AppendValues(values.data(), values.size()));
3015 AssertTypeEqual(*builder_->type(), *type);
3016 ASSERT_EQ(builder_->length(), static_cast<int64_t>(values.size()));
3017 Done();
3018 ASSERT_EQ(builder_->length(), 0);
3019 AssertArraysEqual(*expected_, *result_);
3020
3021 // Reuse builder
3022 builder_->Reset();
3023 AssertTypeEqual(*builder_->type(), *uint8());
3024 ASSERT_OK(builder_->AppendValues(values.data(), values.size()));
3025 AssertTypeEqual(*builder_->type(), *type);
3026 ASSERT_EQ(builder_->length(), static_cast<int64_t>(values.size()));
3027 Done();
3028 ASSERT_EQ(builder_->length(), 0);
3029 AssertArraysEqual(*expected_, *result_);
3030 }
3031
3032 protected:
3033 std::shared_ptr<AdaptiveUIntBuilder> builder_;

Callers

nothing calls this directly

Calls 8

AssertArraysEqualFunction · 0.85
type_singletonFunction · 0.50
AppendValuesMethod · 0.45
dataMethod · 0.45
sizeMethod · 0.45
typeMethod · 0.45
lengthMethod · 0.45
ResetMethod · 0.45

Tested by

no test coverage detected