diff options
Diffstat (limited to 'src/mongo/db/exec/bucket_unpacker_test.cpp')
| -rw-r--r-- | src/mongo/db/exec/bucket_unpacker_test.cpp | 234 |
1 files changed, 71 insertions, 163 deletions
diff --git a/src/mongo/db/exec/bucket_unpacker_test.cpp b/src/mongo/db/exec/bucket_unpacker_test.cpp index 1d62aae3768..8ee0f4e05f5 100644 --- a/src/mongo/db/exec/bucket_unpacker_test.cpp +++ b/src/mongo/db/exec/bucket_unpacker_test.cpp @@ -57,12 +57,12 @@ public: * before actually doing any unpacking. */ BucketUnpacker makeBucketUnpacker(std::set<std::string> fields, - BucketSpec::Behavior behavior, + BucketUnpacker::Behavior behavior, BSONObj bucket, boost::optional<std::string> metaFieldName = boost::none) { - auto spec = - BucketSpec{kUserDefinedTimeName.toString(), metaFieldName, std::move(fields), behavior}; - BucketUnpacker unpacker{std::move(spec)}; + auto spec = BucketSpec{kUserDefinedTimeName.toString(), metaFieldName, std::move(fields)}; + + BucketUnpacker unpacker{std::move(spec), behavior}; unpacker.reset(std::move(bucket)); return unpacker; } @@ -72,13 +72,12 @@ public: * the given 'bucket'. Asserts that 'reset()' throws the given 'errorCode'. */ void assertUnpackerThrowsCode(std::set<std::string> fields, - BucketSpec::Behavior behavior, + BucketUnpacker::Behavior behavior, BSONObj bucket, boost::optional<std::string> metaFieldName, int errorCode) { - auto spec = - BucketSpec{kUserDefinedTimeName.toString(), metaFieldName, std::move(fields), behavior}; - BucketUnpacker unpacker{std::move(spec)}; + auto spec = BucketSpec{kUserDefinedTimeName.toString(), metaFieldName, std::move(fields)}; + BucketUnpacker unpacker{std::move(spec), behavior}; ASSERT_THROWS_CODE(unpacker.reset(std::move(bucket)), AssertionException, errorCode); } @@ -170,11 +169,6 @@ public: } return root.obj(); } - - bool computedMetaProjFieldsContainsField(std::set<std::string>& computedMetaProjFields, - std::string field) { - return computedMetaProjFields.find(field) != computedMetaProjFields.end(); - } }; TEST_F(BucketUnpackerTest, UnpackBasicIncludeAllMeasurementFields) { @@ -187,7 +181,7 @@ TEST_F(BucketUnpackerTest, UnpackBasicIncludeAllMeasurementFields) { "a:{'0':1, '1':2}, b:{'1':1}}}"); auto unpacker = makeBucketUnpacker(std::move(fields), - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(bucket), kUserDefinedMetaName.toString()); @@ -211,7 +205,7 @@ TEST_F(BucketUnpackerTest, ExcludeASingleField) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); @@ -239,7 +233,7 @@ TEST_F(BucketUnpackerTest, EmptyIncludeGetsEmptyMeasurements) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(bucket), kUserDefinedMetaName.toString()); @@ -265,7 +259,7 @@ TEST_F(BucketUnpackerTest, EmptyExcludeMaterializesAllFields) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -293,7 +287,7 @@ TEST_F(BucketUnpackerTest, SparseColumnsWhereOneColumnIsExhaustedBeforeTheOther) auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -320,7 +314,7 @@ TEST_F(BucketUnpackerTest, UnpackBasicIncludeWithDollarPrefix) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -347,7 +341,7 @@ TEST_F(BucketUnpackerTest, BucketsWithMetadataOnly) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -373,7 +367,7 @@ TEST_F(BucketUnpackerTest, UnorderedRowKeysDoesntAffectMaterialization) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -403,7 +397,7 @@ TEST_F(BucketUnpackerTest, MissingMetaFieldDoesntMaterializeMetadata) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -430,7 +424,7 @@ TEST_F(BucketUnpackerTest, MissingMetaFieldDoesntMaterializeMetadataUnorderedKey auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -458,7 +452,7 @@ TEST_F(BucketUnpackerTest, ExcludedMetaFieldDoesntMaterializeMetadataWhenBucketH auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -485,7 +479,7 @@ TEST_F(BucketUnpackerTest, UnpackerResetThrowsOnUndefinedMeta) { auto test = [&](BSONObj bucket) { assertUnpackerThrowsCode(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString(), 5369600); @@ -505,7 +499,7 @@ TEST_F(BucketUnpackerTest, UnpackerResetThrowsOnUnexpectedMeta) { auto test = [&](BSONObj bucket) { assertUnpackerThrowsCode(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), boost::none /* no metaField provided */, 5369601); @@ -524,7 +518,7 @@ TEST_F(BucketUnpackerTest, NullMetaInBucketMaterializesAsNull) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -556,7 +550,7 @@ TEST_F(BucketUnpackerTest, GetNextHandlesMissingMetaInBucket) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker(fields, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, std::move(bucket), kUserDefinedMetaName.toString()); ASSERT_TRUE(unpacker.hasNext()); @@ -585,7 +579,7 @@ TEST_F(BucketUnpackerTest, EmptyDataRegionInBucketIsTolerated) { auto test = [&](BSONObj bucket) { auto unpacker = makeBucketUnpacker( - fields, BucketSpec::Behavior::kExclude, bucket, kUserDefinedMetaName.toString()); + fields, BucketUnpacker::Behavior::kExclude, bucket, kUserDefinedMetaName.toString()); ASSERT_FALSE(unpacker.hasNext()); }; @@ -597,7 +591,7 @@ TEST_F(BucketUnpackerTest, UnpackerResetThrowsOnEmptyBucket) { auto bucket = Document{}; assertUnpackerThrowsCode(std::move(fields), - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, bucket.toBson(), kUserDefinedMetaName.toString(), 5346510); @@ -615,125 +609,51 @@ TEST_F(BucketUnpackerTest, EraseMetaFromFieldSetAndDetermineIncludeMeta) { } })"); auto unpacker = makeBucketUnpacker(empFields, - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(bucket), kUserDefinedMetaName.toString()); // Tests a spec with 'metaField' in include list. std::set<std::string> fields{kUserDefinedMetaName.toString()}; - auto specWithMetaInclude = BucketSpec{kUserDefinedTimeName.toString(), - kUserDefinedMetaName.toString(), - std::move(fields), - BucketSpec::Behavior::kInclude}; + auto specWithMetaInclude = BucketSpec{ + kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), std::move(fields)}; // This calls eraseMetaFromFieldSetAndDetermineIncludeMeta. - unpacker.setBucketSpec(std::move(specWithMetaInclude)); + unpacker.setBucketSpecAndBehavior(std::move(specWithMetaInclude), + BucketUnpacker::Behavior::kInclude); ASSERT_TRUE(unpacker.includeMetaField()); ASSERT_EQ(unpacker.bucketSpec().fieldSet().count(kUserDefinedMetaName.toString()), 0); std::set<std::string> fieldsNoMetaInclude{"foo"}; auto specWithFooInclude = BucketSpec{kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), - std::move(fieldsNoMetaInclude), - BucketSpec::Behavior::kInclude}; + std::move(fieldsNoMetaInclude)}; std::set<std::string> fieldsNoMetaExclude{"foo"}; auto specWithFooExclude = BucketSpec{kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), - std::move(fieldsNoMetaExclude), - BucketSpec::Behavior::kExclude}; + std::move(fieldsNoMetaExclude)}; - unpacker.setBucketSpec(std::move(specWithFooExclude)); + unpacker.setBucketSpecAndBehavior(std::move(specWithFooExclude), + BucketUnpacker::Behavior::kExclude); ASSERT_TRUE(unpacker.includeMetaField()); - unpacker.setBucketSpec(std::move(specWithFooInclude)); + unpacker.setBucketSpecAndBehavior(std::move(specWithFooInclude), + BucketUnpacker::Behavior::kInclude); ASSERT_FALSE(unpacker.includeMetaField()); // Tests a spec with 'metaField' not in exclude list. std::set<std::string> excludeFields{}; - auto specMetaExclude = BucketSpec{kUserDefinedTimeName.toString(), - kUserDefinedMetaName.toString(), - std::move(excludeFields), - BucketSpec::Behavior::kExclude}; - + auto specMetaExclude = BucketSpec{ + kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), std::move(excludeFields)}; auto specMetaInclude = specMetaExclude; - specMetaInclude.setBehavior(BucketSpec::Behavior::kInclude); - - unpacker.setBucketSpec(std::move(specMetaExclude)); + unpacker.setBucketSpecAndBehavior(std::move(specMetaExclude), + BucketUnpacker::Behavior::kExclude); ASSERT_TRUE(unpacker.includeMetaField()); - unpacker.setBucketSpec(std::move(specMetaInclude)); + unpacker.setBucketSpecAndBehavior(std::move(specMetaInclude), + BucketUnpacker::Behavior::kInclude); ASSERT_FALSE(unpacker.includeMetaField()); } -TEST_F(BucketUnpackerTest, EraseUnneededComputedMetaProjFieldsWithInclusiveProject) { - auto bucket = fromjson(R"( -{ - control: {version: 1}, - data: { - _id: {'0':4, '1':5, '2':6}, - time: {'0':4, '1': 5, '2': 6} - } -})"); - std::set<std::string> unpackerFields{kUserDefinedTimeName.toString()}; - auto unpacker = makeBucketUnpacker(unpackerFields, - BucketSpec::Behavior::kInclude, - std::move(bucket), - kUserDefinedMetaName.toString()); - - // Add fields to '_computedMetaProjFields'. - unpacker.addComputedMetaProjFields({"hello"_sd, "bye"_sd}); - auto computedMetaProjFields = unpacker.bucketSpec().computedMetaProjFields(); - ASSERT_TRUE(computedMetaProjFieldsContainsField(computedMetaProjFields, "hello")); - ASSERT_TRUE(computedMetaProjFieldsContainsField(computedMetaProjFields, "bye")); - - auto spec = unpacker.bucketSpec(); - std::set<std::string> includeFields{kUserDefinedTimeName.toString(), "bye"}; - spec.setFieldSet(includeFields); - spec.setBehavior(BucketSpec::Behavior::kInclude); - - // This calls eraseUnneededComputedMetaProjFields(). - unpacker.setBucketSpec(std::move(spec)); - computedMetaProjFields = unpacker.bucketSpec().computedMetaProjFields(); - // As "hello" was not in the includes, it should be removed. - ASSERT_FALSE(computedMetaProjFieldsContainsField(computedMetaProjFields, "hello")); - // As "bye" was in the includes, it should still be in '_computedMetaProjFields'. - ASSERT_TRUE(computedMetaProjFieldsContainsField(computedMetaProjFields, "bye")); -} - -TEST_F(BucketUnpackerTest, EraseUnneededComputedMetaProjFieldsWithExclusiveProject) { - auto bucket = fromjson(R"( -{ - control: {version: 1}, - data: { - _id: {'0':4, '1':5, '2':6}, - time: {'0':4, '1': 5, '2': 6} - } -})"); - std::set<std::string> unpackerFields{kUserDefinedTimeName.toString()}; - auto unpacker = makeBucketUnpacker(unpackerFields, - BucketSpec::Behavior::kInclude, - std::move(bucket), - kUserDefinedMetaName.toString()); - - // Add fields to '_computedMetaProjFields'. - unpacker.addComputedMetaProjFields({"hello"_sd, "bye"_sd}); - auto computedMetaProjFields = unpacker.bucketSpec().computedMetaProjFields(); - ASSERT_TRUE(computedMetaProjFieldsContainsField(computedMetaProjFields, "hello")); - ASSERT_TRUE(computedMetaProjFieldsContainsField(computedMetaProjFields, "bye")); - - auto spec = unpacker.bucketSpec(); - std::set<std::string> excludeFields{kUserDefinedTimeName.toString(), "bye"}; - spec.setFieldSet(excludeFields); - spec.setBehavior(BucketSpec::Behavior::kExclude); - - // This calls eraseUnneededComputedMetaProjFields(). - unpacker.setBucketSpec(std::move(spec)); - computedMetaProjFields = unpacker.bucketSpec().computedMetaProjFields(); - // As "hello" was not excluded, it should still exist. - ASSERT_TRUE(computedMetaProjFieldsContainsField(computedMetaProjFields, "hello")); - // As "bye" was in the excludes, it should be removed from '_computedMetaProjFields'. - ASSERT_FALSE(computedMetaProjFieldsContainsField(computedMetaProjFields, "bye")); -} - TEST_F(BucketUnpackerTest, DetermineIncludeTimeField) { auto bucket = fromjson(R"( { @@ -745,25 +665,21 @@ TEST_F(BucketUnpackerTest, DetermineIncludeTimeField) { })"); std::set<std::string> unpackerFields{kUserDefinedTimeName.toString()}; auto unpacker = makeBucketUnpacker(unpackerFields, - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(bucket), kUserDefinedMetaName.toString()); std::set<std::string> includeFields{kUserDefinedTimeName.toString()}; - auto includeSpec = BucketSpec{kUserDefinedTimeName.toString(), - kUserDefinedMetaName.toString(), - std::move(includeFields), - BucketSpec::Behavior::kInclude}; + auto includeSpec = BucketSpec{ + kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), std::move(includeFields)}; // This calls determineIncludeTimeField. - unpacker.setBucketSpec(std::move(includeSpec)); + unpacker.setBucketSpecAndBehavior(std::move(includeSpec), BucketUnpacker::Behavior::kInclude); ASSERT_TRUE(unpacker.includeTimeField()); std::set<std::string> excludeFields{kUserDefinedTimeName.toString()}; - auto excludeSpec = BucketSpec{kUserDefinedTimeName.toString(), - kUserDefinedMetaName.toString(), - std::move(excludeFields), - BucketSpec::Behavior::kExclude}; - unpacker.setBucketSpec(std::move(excludeSpec)); + auto excludeSpec = BucketSpec{ + kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), std::move(excludeFields)}; + unpacker.setBucketSpecAndBehavior(std::move(excludeSpec), BucketUnpacker::Behavior::kExclude); ASSERT_FALSE(unpacker.includeTimeField()); } @@ -778,26 +694,24 @@ TEST_F(BucketUnpackerTest, DetermineIncludeFieldIncludeMode) { {"data", Document{}}} .toBson(); - auto spec = BucketSpec{kUserDefinedTimeName.toString(), - kUserDefinedMetaName.toString(), - std::move(fields), - BucketSpec::Behavior::kInclude}; + auto spec = BucketSpec{ + kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), std::move(fields)}; BucketUnpacker includeUnpacker; - includeUnpacker.setBucketSpec(std::move(spec)); + includeUnpacker.setBucketSpecAndBehavior(std::move(spec), BucketUnpacker::Behavior::kInclude); // Need to call reset so that the private method calculateFieldsToIncludeExcludeDuringUnpack() // is called, and _unpackFieldsToIncludeExclude gets filled with fields. includeUnpacker.reset(std::move(bucket)); // Now the spec knows which fields to include/exclude. ASSERT_TRUE(determineIncludeField(kUserDefinedTimeName, - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, includeUnpacker.fieldsToIncludeExcludeDuringUnpack())); ASSERT_TRUE(determineIncludeField(includedMeasurementField, - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, includeUnpacker.fieldsToIncludeExcludeDuringUnpack())); ASSERT_FALSE(determineIncludeField(excludedMeasurementField, - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, includeUnpacker.fieldsToIncludeExcludeDuringUnpack())); } @@ -812,23 +726,21 @@ TEST_F(BucketUnpackerTest, DetermineIncludeFieldExcludeMode) { {"data", Document{}}} .toBson(); - auto spec = BucketSpec{kUserDefinedTimeName.toString(), - kUserDefinedMetaName.toString(), - std::move(fields), - BucketSpec::Behavior::kExclude}; + auto spec = BucketSpec{ + kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), std::move(fields)}; BucketUnpacker excludeUnpacker; - excludeUnpacker.setBucketSpec(std::move(spec)); + excludeUnpacker.setBucketSpecAndBehavior(std::move(spec), BucketUnpacker::Behavior::kExclude); excludeUnpacker.reset(std::move(bucket)); ASSERT_FALSE(determineIncludeField(kUserDefinedTimeName, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, excludeUnpacker.fieldsToIncludeExcludeDuringUnpack())); ASSERT_FALSE(determineIncludeField(includedMeasurementField, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, excludeUnpacker.fieldsToIncludeExcludeDuringUnpack())); ASSERT_TRUE(determineIncludeField(excludedMeasurementField, - BucketSpec::Behavior::kExclude, + BucketUnpacker::Behavior::kExclude, excludeUnpacker.fieldsToIncludeExcludeDuringUnpack())); } @@ -846,11 +758,9 @@ auto expectedTimestampObjSize(int32_t rowKeyOffset, int32_t n) { TEST_F(BucketUnpackerTest, ExtractSingleMeasurement) { std::set<std::string> fields{ "_id", kUserDefinedMetaName.toString(), kUserDefinedTimeName.toString(), "a", "b"}; - auto spec = BucketSpec{kUserDefinedTimeName.toString(), - kUserDefinedMetaName.toString(), - std::move(fields), - BucketSpec::Behavior::kInclude}; - auto unpacker = BucketUnpacker{std::move(spec)}; + auto spec = BucketSpec{ + kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), std::move(fields)}; + auto unpacker = BucketUnpacker{std::move(spec), BucketUnpacker::Behavior::kInclude}; auto d1 = dateFromISOString("2020-02-17T00:00:00.000Z").getValue(); auto d2 = dateFromISOString("2020-02-17T01:00:00.000Z").getValue(); @@ -893,11 +803,9 @@ TEST_F(BucketUnpackerTest, ExtractSingleMeasurement) { TEST_F(BucketUnpackerTest, ExtractSingleMeasurementSparse) { std::set<std::string> fields{ "_id", kUserDefinedMetaName.toString(), kUserDefinedTimeName.toString(), "a", "b"}; - auto spec = BucketSpec{kUserDefinedTimeName.toString(), - kUserDefinedMetaName.toString(), - std::move(fields), - BucketSpec::Behavior::kInclude}; - auto unpacker = BucketUnpacker{std::move(spec)}; + auto spec = BucketSpec{ + kUserDefinedTimeName.toString(), kUserDefinedMetaName.toString(), std::move(fields)}; + auto unpacker = BucketUnpacker{std::move(spec), BucketUnpacker::Behavior::kInclude}; auto d1 = dateFromISOString("2020-02-17T00:00:00.000Z").getValue(); auto d2 = dateFromISOString("2020-02-17T01:00:00.000Z").getValue(); @@ -984,7 +892,7 @@ TEST_F(BucketUnpackerTest, TamperedCompressedCountLess) { auto modifiedCompressedBucket = modifyCompressedBucketElementCount(*compressedBucket, -1); auto unpacker = makeBucketUnpacker(std::move(fields), - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(modifiedCompressedBucket), kUserDefinedMetaName.toString()); @@ -1019,7 +927,7 @@ TEST_F(BucketUnpackerTest, TamperedCompressedCountMore) { auto modifiedCompressedBucket = modifyCompressedBucketElementCount(*compressedBucket, 1); auto unpacker = makeBucketUnpacker(std::move(fields), - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(modifiedCompressedBucket), kUserDefinedMetaName.toString()); @@ -1054,7 +962,7 @@ TEST_F(BucketUnpackerTest, TamperedCompressedCountMissing) { auto modifiedCompressedBucket = modifyCompressedBucketElementCount(*compressedBucket, 0); auto unpacker = makeBucketUnpacker(std::move(fields), - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(modifiedCompressedBucket), kUserDefinedMetaName.toString()); @@ -1091,7 +999,7 @@ TEST_F(BucketUnpackerTest, TamperedCompressedElementMismatchDataField) { modifyCompressedBucketRemoveLastInField(*compressedBucket, "a"_sd); auto unpacker = makeBucketUnpacker(std::move(fields), - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(modifiedCompressedBucket), kUserDefinedMetaName.toString()); @@ -1126,7 +1034,7 @@ TEST_F(BucketUnpackerTest, TamperedCompressedElementMismatchTimeField) { modifyCompressedBucketRemoveLastInField(*compressedBucket, "time"_sd); auto unpacker = makeBucketUnpacker(std::move(fields), - BucketSpec::Behavior::kInclude, + BucketUnpacker::Behavior::kInclude, std::move(modifiedCompressedBucket), kUserDefinedMetaName.toString()); |
