libweave: base::Value refactor (1/n)

Rename unit test utility test::CreateValue to test::CreateUniquePtrValue
so that (in next CL of the series) I will add base::CreateValue which
returns a base::Value directly (not wrapped in std::unique_ptr).
test::CreateUniquePtrValue is only kept for the migration and should be
removed eventually.

BUG=chromium:1099111
TEST=FEATURES=test emerge-hatch libweave

Change-Id: Icfde0cb7cbc77c6b2085245f348f8ff07a0a66e1
Reviewed-on: https://chromium-review.googlesource.com/c/weave/libweave/+/3312867
Tested-by: Grace Cham <hscham@chromium.org>
Reviewed-by: Qijiang Yƫki Ishii <fqj@google.com>
Reviewed-by: Hidehiko Abe <hidehiko@chromium.org>
Commit-Queue: Grace Cham <hscham@chromium.org>
diff --git a/include/weave/test/unittest_utils.h b/include/weave/test/unittest_utils.h
index 304ba01..3a66c85 100644
--- a/include/weave/test/unittest_utils.h
+++ b/include/weave/test/unittest_utils.h
@@ -17,7 +17,7 @@
 // Helper method to create base::Value from a string as a smart pointer.
 // For ease of definition in C++ code, double-quotes in the source definition
 // are replaced with apostrophes.
-std::unique_ptr<base::Value> CreateValue(const std::string& json);
+std::unique_ptr<base::Value> CreateUniquePtrValue(const std::string& json);
 
 std::string ValueToString(const base::Value& value);
 
@@ -33,7 +33,8 @@
 }  // namespace weave
 
 #define EXPECT_JSON_EQ(expected, actual)                                       \
-  EXPECT_PRED2(weave::test::IsEqualValue, *weave::test::CreateValue(expected), \
+  EXPECT_PRED2(weave::test::IsEqualValue,                                      \
+               *weave::test::CreateUniquePtrValue(expected),                   \
                actual)
 
 #endif  // LIBWEAVE_INCLUDE_WEAVE_TEST_UNITTEST_UTILS_H_
diff --git a/src/commands/cloud_command_proxy_test.cc b/src/commands/cloud_command_proxy_test.cc
index 79e70d0..7f0b0eb 100644
--- a/src/commands/cloud_command_proxy_test.cc
+++ b/src/commands/cloud_command_proxy_test.cc
@@ -27,14 +27,14 @@
 namespace weave {
 
 using test::CreateDictionaryValue;
-using test::CreateValue;
+using test::CreateUniquePtrValue;
 
 namespace {
 
 const char kCmdID[] = "abcd";
 
 MATCHER_P(MatchJson, str, "") {
-  return arg.Equals(CreateValue(str).get());
+  return arg.Equals(CreateUniquePtrValue(str).get());
 }
 
 class MockCloudCommandUpdateInterface : public CloudCommandUpdateInterface {
diff --git a/src/commands/command_instance_test.cc b/src/commands/command_instance_test.cc
index 01db66e..70353b6 100644
--- a/src/commands/command_instance_test.cc
+++ b/src/commands/command_instance_test.cc
@@ -15,7 +15,7 @@
 namespace weave {
 
 using test::CreateDictionaryValue;
-using test::CreateValue;
+using test::CreateUniquePtrValue;
 
 namespace {
 
@@ -135,7 +135,7 @@
 }
 
 TEST_F(CommandInstanceTest, FromJson_NotObject) {
-  auto json = CreateValue("'string'");
+  auto json = CreateUniquePtrValue("'string'");
   ErrorPtr error;
   auto instance = CommandInstance::FromJson(json.get(), Command::Origin::kCloud,
                                             dict_, nullptr, &error);
diff --git a/src/commands/object_schema_test.cc b/src/commands/object_schema_test.cc
index 62cc149..3224f8a 100644
--- a/src/commands/object_schema_test.cc
+++ b/src/commands/object_schema_test.cc
@@ -21,8 +21,8 @@
 
 namespace weave {
 
-using test::CreateValue;
 using test::CreateDictionaryValue;
+using test::CreateUniquePtrValue;
 
 namespace {
 
@@ -130,31 +130,31 @@
   IntPropType prop;
   prop.AddMinMaxConstraint(2, 4);
   ErrorPtr error;
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("-1"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("-1"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("0"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("0"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("1"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("1"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("2"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("2"), &error));
   EXPECT_EQ(nullptr, error.get());
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("3"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("3"), &error));
   EXPECT_EQ(nullptr, error.get());
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("4"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("4"), &error));
   EXPECT_EQ(nullptr, error.get());
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("5"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("5"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("true"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("true"), &error));
   EXPECT_EQ("type_mismatch", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("3.0"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("3.0"), &error));
   EXPECT_EQ("type_mismatch", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("'3'"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("'3'"), &error));
   EXPECT_EQ("type_mismatch", error->GetCode());
 }
 
@@ -232,18 +232,18 @@
   BooleanPropType prop;
   prop.FromJson(CreateDictionaryValue("{'enum':[true]}").get(), &prop, nullptr);
   ErrorPtr error;
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("false"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("false"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("true"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("true"), &error));
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("1"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("1"), &error));
   EXPECT_EQ("type_mismatch", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("3.0"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("3.0"), &error));
   EXPECT_EQ("type_mismatch", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("'3'"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("'3'"), &error));
   EXPECT_EQ("type_mismatch", error->GetCode());
 }
 
@@ -342,25 +342,25 @@
   DoublePropType prop;
   prop.AddMinMaxConstraint(-1.2, 1.3);
   ErrorPtr error;
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("-2"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("-2"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("-1.3"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("-1.3"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("-1.2"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("-1.2"), &error));
   EXPECT_EQ(nullptr, error.get());
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("0.0"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("0.0"), &error));
   EXPECT_EQ(nullptr, error.get());
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("1.3"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("1.3"), &error));
   EXPECT_EQ(nullptr, error.get());
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("1.31"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("1.31"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("true"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("true"), &error));
   EXPECT_EQ("type_mismatch", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("'0.0'"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("'0.0'"), &error));
   EXPECT_EQ("type_mismatch", error->GetCode());
 }
 
@@ -461,30 +461,30 @@
   StringPropType prop;
   prop.AddLengthConstraint(1, 3);
   ErrorPtr error;
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("''"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("''"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
   prop.AddLengthConstraint(2, 3);
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("''"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("''"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("'a'"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("'a'"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("'ab'"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("'ab'"), &error));
   EXPECT_EQ(nullptr, error.get());
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("'abc'"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("'abc'"), &error));
   EXPECT_EQ(nullptr, error.get());
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("'abcd'"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("'abcd'"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
 
   prop.FromJson(CreateDictionaryValue("{'enum':['abc','def','xyz!!']}").get(),
                 nullptr, &error);
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("'abc'"), &error));
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("'def'"), &error));
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("'xyz!!'"), &error));
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("'xyz'"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("'abc'"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("'def'"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("'xyz!!'"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("'xyz'"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
 }
@@ -683,29 +683,33 @@
       nullptr, nullptr);
   ErrorPtr error;
   EXPECT_TRUE(ValidateValue(
-      prop, *CreateValue("{'expires':10,'password':'abcdef'}"), &error));
-  error.reset();
-
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("{'expires':10}"), &error));
-  EXPECT_EQ("parameter_missing", error->GetCode());
+      prop, *CreateUniquePtrValue("{'expires':10,'password':'abcdef'}"),
+      &error));
   error.reset();
 
   EXPECT_FALSE(
-      ValidateValue(prop, *CreateValue("{'password':'abcdef'}"), &error));
+      ValidateValue(prop, *CreateUniquePtrValue("{'expires':10}"), &error));
   EXPECT_EQ("parameter_missing", error->GetCode());
   error.reset();
 
   EXPECT_FALSE(ValidateValue(
-      prop, *CreateValue("{'expires':10,'password':'abcde'}"), &error));
+      prop, *CreateUniquePtrValue("{'password':'abcdef'}"), &error));
+  EXPECT_EQ("parameter_missing", error->GetCode());
+  error.reset();
+
+  EXPECT_FALSE(ValidateValue(
+      prop, *CreateUniquePtrValue("{'expires':10,'password':'abcde'}"),
+      &error));
   EXPECT_EQ("out_of_range", error->GetFirstError()->GetCode());
   error.reset();
 
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("2"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("2"), &error));
   EXPECT_EQ("type_mismatch", error->GetCode());
   error.reset();
 
   EXPECT_FALSE(ValidateValue(
-      prop, *CreateValue("{'expires':10,'password':'abcdef','retry':true}"),
+      prop,
+      *CreateUniquePtrValue("{'expires':10,'password':'abcdef','retry':true}"),
       &error));
   EXPECT_EQ("unexpected_parameter", error->GetCode());
   error.reset();
@@ -720,16 +724,16 @@
           .get(),
       nullptr, nullptr));
   ErrorPtr error;
-  EXPECT_TRUE(
-      ValidateValue(prop, *CreateValue("{'height':20,'width':10}"), &error));
+  EXPECT_TRUE(ValidateValue(
+      prop, *CreateUniquePtrValue("{'height':20,'width':10}"), &error));
   error.reset();
 
-  EXPECT_TRUE(
-      ValidateValue(prop, *CreateValue("{'height':200,'width':100}"), &error));
+  EXPECT_TRUE(ValidateValue(
+      prop, *CreateUniquePtrValue("{'height':200,'width':100}"), &error));
   error.reset();
 
-  EXPECT_FALSE(
-      ValidateValue(prop, *CreateValue("{'height':12,'width':10}"), &error));
+  EXPECT_FALSE(ValidateValue(
+      prop, *CreateUniquePtrValue("{'height':12,'width':10}"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
 }
@@ -831,14 +835,15 @@
       nullptr, nullptr);
 
   ErrorPtr error;
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("[3,4,10.5]"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("[3,4,10.5]"), &error));
   error.reset();
 
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("[2]"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("[2]"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
 
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("[4, 5, 20]"), &error));
+  EXPECT_FALSE(
+      ValidateValue(prop, *CreateUniquePtrValue("[4, 5, 20]"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
 }
@@ -851,14 +856,14 @@
       nullptr, nullptr);
 
   ErrorPtr error;
-  EXPECT_TRUE(ValidateValue(prop, *CreateValue("[2,3]"), &error));
+  EXPECT_TRUE(ValidateValue(prop, *CreateUniquePtrValue("[2,3]"), &error));
   error.reset();
 
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("[2]"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("[2]"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
 
-  EXPECT_FALSE(ValidateValue(prop, *CreateValue("[2,3,4]"), &error));
+  EXPECT_FALSE(ValidateValue(prop, *CreateUniquePtrValue("[2,3,4]"), &error));
   EXPECT_EQ("out_of_range", error->GetCode());
   error.reset();
 }
@@ -881,7 +886,8 @@
   EXPECT_JSON_EQ("[]", *val->ToJson());
 
   val = prop.CreateValue(
-      *CreateValue("[{'height':20,'width':10},{'width':17, 'height':18}]"),
+      *CreateUniquePtrValue(
+          "[{'height':20,'width':10},{'width':17, 'height':18}]"),
       &error);
   ASSERT_NE(nullptr, val.get());
   EXPECT_EQ(nullptr, error.get());
diff --git a/src/commands/schema_utils_test.cc b/src/commands/schema_utils_test.cc
index bb2d8e0..360e343 100644
--- a/src/commands/schema_utils_test.cc
+++ b/src/commands/schema_utils_test.cc
@@ -20,7 +20,7 @@
 namespace weave {
 
 using test::CreateDictionaryValue;
-using test::CreateValue;
+using test::CreateUniquePtrValue;
 
 TEST(CommandSchemaUtils, TypedValueToJson_Scalar) {
   EXPECT_JSON_EQ("true", *TypedValueToJson(true));
@@ -71,17 +71,17 @@
 TEST(CommandSchemaUtils, TypedValueFromJson_Bool) {
   bool value;
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("true").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("true").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_TRUE(value);
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("false").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("false").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_FALSE(value);
 
   ErrorPtr error;
-  EXPECT_FALSE(
-      TypedValueFromJson(CreateValue("0").get(), nullptr, &value, &error));
+  EXPECT_FALSE(TypedValueFromJson(CreateUniquePtrValue("0").get(), nullptr,
+                                  &value, &error));
   EXPECT_EQ(errors::commands::kTypeMismatch, error->GetCode());
   error.reset();
 }
@@ -89,21 +89,21 @@
 TEST(CommandSchemaUtils, TypedValueFromJson_Int) {
   int value;
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("0").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("0").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_EQ(0, value);
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("23").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("23").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_EQ(23, value);
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("-1234").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("-1234").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_EQ(-1234, value);
 
   ErrorPtr error;
-  EXPECT_FALSE(
-      TypedValueFromJson(CreateValue("'abc'").get(), nullptr, &value, &error));
+  EXPECT_FALSE(TypedValueFromJson(CreateUniquePtrValue("'abc'").get(), nullptr,
+                                  &value, &error));
   EXPECT_EQ(errors::commands::kTypeMismatch, error->GetCode());
   error.reset();
 }
@@ -111,27 +111,27 @@
 TEST(CommandSchemaUtils, TypedValueFromJson_Double) {
   double value;
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("0").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("0").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_DOUBLE_EQ(0.0, value);
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("0.0").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("0.0").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_DOUBLE_EQ(0.0, value);
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("23").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("23").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_EQ(23.0, value);
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("23.1").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("23.1").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_EQ(23.1, value);
 
-  EXPECT_TRUE(TypedValueFromJson(CreateValue("-1.23E+02").get(), nullptr,
-                                 &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("-1.23E+02").get(),
+                                 nullptr, &value, nullptr));
   EXPECT_EQ(-123.0, value);
 
   ErrorPtr error;
-  EXPECT_FALSE(
-      TypedValueFromJson(CreateValue("'abc'").get(), nullptr, &value, &error));
+  EXPECT_FALSE(TypedValueFromJson(CreateUniquePtrValue("'abc'").get(), nullptr,
+                                  &value, &error));
   EXPECT_EQ(errors::commands::kTypeMismatch, error->GetCode());
   error.reset();
 }
@@ -139,21 +139,21 @@
 TEST(CommandSchemaUtils, TypedValueFromJson_String) {
   std::string value;
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("''").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("''").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_EQ("", value);
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("'23'").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("'23'").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_EQ("23", value);
 
-  EXPECT_TRUE(
-      TypedValueFromJson(CreateValue("'abc'").get(), nullptr, &value, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("'abc'").get(), nullptr,
+                                 &value, nullptr));
   EXPECT_EQ("abc", value);
 
   ErrorPtr error;
-  EXPECT_FALSE(
-      TypedValueFromJson(CreateValue("12").get(), nullptr, &value, &error));
+  EXPECT_FALSE(TypedValueFromJson(CreateUniquePtrValue("12").get(), nullptr,
+                                  &value, &error));
   EXPECT_EQ(errors::commands::kTypeMismatch, error->GetCode());
   error.reset();
 }
@@ -172,8 +172,9 @@
 
   ObjectPropType type;
   type.SetObjectSchema(std::move(schema));
-  EXPECT_TRUE(TypedValueFromJson(CreateValue("{'age':20,'name':'Bob'}").get(),
-                                 &type, &value, nullptr));
+  EXPECT_TRUE(
+      TypedValueFromJson(CreateUniquePtrValue("{'age':20,'name':'Bob'}").get(),
+                         &type, &value, nullptr));
   ValueMap value2;
   value2.insert(std::make_pair(
       "age", age_prop.CreateValue(base::Value{20}, nullptr)));
@@ -182,8 +183,8 @@
   EXPECT_EQ(value2, value);
 
   ErrorPtr error;
-  EXPECT_FALSE(
-      TypedValueFromJson(CreateValue("'abc'").get(), nullptr, &value, &error));
+  EXPECT_FALSE(TypedValueFromJson(CreateUniquePtrValue("'abc'").get(), nullptr,
+                                  &value, &error));
   EXPECT_EQ(errors::commands::kTypeMismatch, error->GetCode());
   error.reset();
 }
@@ -195,16 +196,16 @@
   ArrayPropType type;
   type.SetItemType(str_type.Clone());
 
-  EXPECT_TRUE(TypedValueFromJson(CreateValue("['foo', 'bar']").get(), &type,
-                                 &arr, nullptr));
+  EXPECT_TRUE(TypedValueFromJson(CreateUniquePtrValue("['foo', 'bar']").get(),
+                                 &type, &arr, nullptr));
   ValueVector arr2;
   arr2.push_back(str_type.CreateValue(base::Value{"foo"}, nullptr));
   arr2.push_back(str_type.CreateValue(base::Value{"bar"}, nullptr));
   EXPECT_EQ(arr2, arr);
 
   ErrorPtr error;
-  EXPECT_FALSE(TypedValueFromJson(CreateValue("['baz', 'ab']").get(), &type,
-                                  &arr, &error));
+  EXPECT_FALSE(TypedValueFromJson(CreateUniquePtrValue("['baz', 'ab']").get(),
+                                  &type, &arr, &error));
   EXPECT_EQ(errors::commands::kOutOfRange, error->GetCode());
   error.reset();
 }
diff --git a/src/config_test.cc b/src/config_test.cc
index 10ed07e..cbe4dbf 100644
--- a/src/config_test.cc
+++ b/src/config_test.cc
@@ -250,7 +250,7 @@
           'secret': 'set_secret',
           'service_url': 'set_service_url'
         })";
-        EXPECT_JSON_EQ(expected, *test::CreateValue(json));
+        EXPECT_JSON_EQ(expected, *test::CreateUniquePtrValue(json));
       }));
 
   change.Commit();
diff --git a/src/device_registration_info_test.cc b/src/device_registration_info_test.cc
index 807f76c..c3ec69f 100644
--- a/src/device_registration_info_test.cc
+++ b/src/device_registration_info_test.cc
@@ -34,11 +34,11 @@
 
 namespace weave {
 
-using test::CreateDictionaryValue;
-using test::CreateValue;
+using provider::HttpClient;
 using provider::test::MockHttpClient;
 using provider::test::MockHttpClientResponse;
-using provider::HttpClient;
+using test::CreateDictionaryValue;
+using test::CreateUniquePtrValue;
 
 namespace {
 
@@ -541,7 +541,7 @@
 
     command_url_ = dev_reg_->GetServiceURL("commands/1234");
 
-    auto commands_json = CreateValue(R"([{
+    auto commands_json = CreateUniquePtrValue(R"([{
       'name':'robot._jump',
       'id':'1234',
       'parameters': {'_height': 100},
diff --git a/src/test/unittest_utils.cc b/src/test/unittest_utils.cc
index 67afcc7..81395f3 100644
--- a/src/test/unittest_utils.cc
+++ b/src/test/unittest_utils.cc
@@ -15,7 +15,7 @@
 namespace weave {
 namespace test {
 
-std::unique_ptr<base::Value> CreateValue(const std::string& json) {
+std::unique_ptr<base::Value> CreateUniquePtrValue(const std::string& json) {
   std::string json2(json);
   // Convert apostrophes to double-quotes so JSONReader can parse the string.
   std::replace(json2.begin(), json2.end(), '\'', '"');
@@ -35,7 +35,7 @@
 
 std::unique_ptr<base::DictionaryValue> CreateDictionaryValue(
     const std::string& json) {
-  std::unique_ptr<base::Value> value = CreateValue(json);
+  std::unique_ptr<base::Value> value = CreateUniquePtrValue(json);
   base::DictionaryValue* dict = nullptr;
   value->GetAsDictionary(&dict);
   CHECK(dict) << "Value is not dictionary: " << json;