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

Method TestAppendValues

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

Source from the content-addressed store, hash-verified

3051
3052 template <typename ExpectedType>
3053 void TestAppendValues() {
3054 using CType = typename TypeTraits<ExpectedType>::CType;
3055 auto type = TypeTraits<ExpectedType>::type_singleton();
3056
3057 std::vector<uint64_t> values(
3058 {0, std::numeric_limits<CType>::min(), std::numeric_limits<CType>::max()});
3059 std::vector<CType> expected_values(
3060 {0, std::numeric_limits<CType>::min(), std::numeric_limits<CType>::max()});
3061 ArrayFromVector<ExpectedType, CType>(expected_values, &expected_);
3062
3063 SetUp();
3064 ASSERT_OK(builder_->AppendValues(values.data(), values.size()));
3065 AssertTypeEqual(*builder_->type(), *type);
3066 ASSERT_EQ(builder_->length(), static_cast<int64_t>(values.size()));
3067 Done();
3068 ASSERT_EQ(builder_->length(), 0);
3069 AssertArraysEqual(*expected_, *result_);
3070
3071 // Reuse builder
3072 builder_->Reset();
3073 AssertTypeEqual(*builder_->type(), *uint8());
3074 ASSERT_OK(builder_->AppendValues(values.data(), values.size()));
3075 AssertTypeEqual(*builder_->type(), *type);
3076 ASSERT_EQ(builder_->length(), static_cast<int64_t>(values.size()));
3077 Done();
3078 ASSERT_EQ(builder_->length(), 0);
3079 AssertArraysEqual(*expected_, *result_);
3080 }
3081
3082 protected:
3083 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