Commit 2b179f9d authored by Kevin Hurley's avatar Kevin Hurley Committed by facebook-github-bot-4

Add unit test for update_missing

Summary: Forgot to add a test for this when I added update_missing.  This adds a test for it

Reviewed By: @yfeldblum

Differential Revision: D2441612
parent a29c1dfa
......@@ -107,18 +107,31 @@ TEST(Dynamic, ObjectBasics) {
dynamic mergeObj2 = folly::dynamic::object
("key2", "value3")
("key3", "value4");
dynamic combinedObj = folly::dynamic::object
// Merged object where we prefer the values in mergeObj2
dynamic combinedPreferObj2 = folly::dynamic::object
("key1", "value1")
("key2", "value3")
("key3", "value4");
// Merged object where we prefer the values in mergeObj1
dynamic combinedPreferObj1 = folly::dynamic::object
("key1", "value1")
("key2", "value2")
("key3", "value4");
auto newMergeObj = dynamic::merge(mergeObj1, mergeObj2);
EXPECT_EQ(newMergeObj, combinedObj);
EXPECT_EQ(newMergeObj, combinedPreferObj2);
EXPECT_EQ(mergeObj1, origMergeObj1); // mergeObj1 should be unchanged
mergeObj1.update(mergeObj2);
EXPECT_EQ(mergeObj1, combinedObj);
EXPECT_EQ(mergeObj1, combinedPreferObj2);
dynamic arr = { 1, 2, 3, 4, 5, 6 };
EXPECT_THROW(mergeObj1.update(arr), std::exception);
mergeObj1 = origMergeObj1; // reset it
mergeObj1.update_missing(mergeObj2);
EXPECT_EQ(mergeObj1, combinedPreferObj1);
}
TEST(Dynamic, ObjectErase) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment