Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(281)

Unified Diff: components/policy/core/browser/android/policy_converter_unittest.cc

Issue 1220683008: Move AppRestriction to Policy code out of //chrome (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed a redundant comment Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/policy/core/browser/android/policy_converter_unittest.cc
diff --git a/chrome/browser/android/policy/policy_manager_unittest.cc b/components/policy/core/browser/android/policy_converter_unittest.cc
similarity index 59%
rename from chrome/browser/android/policy/policy_manager_unittest.cc
rename to components/policy/core/browser/android/policy_converter_unittest.cc
index 99967b52a93890bf43c17cbb2d960c3abff2941c..fc8ec6400f38373dcff9b63d2650f2017e87eb91 100644
--- a/chrome/browser/android/policy/policy_manager_unittest.cc
+++ b/components/policy/core/browser/android/policy_converter_unittest.cc
@@ -2,9 +2,12 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "base/android/jni_android.h"
+#include "base/android/jni_array.h"
+#include "base/android/jni_string.h"
#include "base/json/json_writer.h"
#include "base/values.h"
-#include "chrome/browser/android/policy/policy_manager.h"
+#include "components/policy/core/browser/android/policy_converter.h"
#include "components/policy/core/common/schema.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -14,7 +17,10 @@ using base::ListValue;
using base::StringValue;
using base::Value;
-class PolicyManagerTest : public testing::Test {
+namespace policy {
+namespace android {
+
+class PolicyConverterTest : public testing::Test {
public:
void SetUp() override {
const char kSchemaTemplate[] =
@@ -35,16 +41,16 @@ class PolicyManagerTest : public testing::Test {
"}";
std::string error;
- schema_ = policy::Schema::Parse(kSchemaTemplate, &error);
+ schema_ = Schema::Parse(kSchemaTemplate, &error);
ASSERT_TRUE(schema_.valid()) << error;
}
protected:
// Converts the passed in value to the passed in schema, and serializes the
// result to JSON, to make it easier to compare with EXPECT_EQ.
- std::string Convert(Value* value, const policy::Schema& value_schema) {
- scoped_ptr<Value> converted_value(
- PolicyManager::ConvertValueToSchema(value, value_schema));
+ std::string Convert(Value* value, const Schema& value_schema) {
+ scoped_ptr<Value> converted_value(PolicyConverter::ConvertValueToSchema(
+ scoped_ptr<Value>(value), value_schema));
std::string json_string;
EXPECT_TRUE(
@@ -52,18 +58,46 @@ class PolicyManagerTest : public testing::Test {
return json_string;
}
- policy::Schema schema_;
+ // Uses|PolicyConverter::ConvertJavaStringArrayToListValue| to convert the
+ // passed in java array and serializes the result to JSON, to make it easier
+ // to compare with EXPECT_EQ.
+ std::string ConvertJavaStringArrayToListValue(JNIEnv* env,
+ jobjectArray java_array) {
+ scoped_ptr<ListValue> list =
+ PolicyConverter::ConvertJavaStringArrayToListValue(env, java_array);
+
+ std::string json_string;
+ EXPECT_TRUE(base::JSONWriter::Write(*(list.get()), &json_string));
Bernhard Bauer 2015/07/14 13:24:14 This can be just *list.
dgn 2015/07/14 15:56:52 Done.
+
+ return json_string;
+ }
+
+ // Converts the passed in values to a java string array
+ jobjectArray MakeJavaStringArray(JNIEnv* env,
+ std::vector<std::string> values) {
+ jobjectArray java_array = (jobjectArray)env->NewObjectArray(
+ values.size(), env->FindClass("java/lang/String"), nullptr);
+ for (size_t i = 0; i < values.size(); i++) {
+ env->SetObjectArrayElement(
+ java_array, i,
+ base::android::ConvertUTF8ToJavaString(env, values[i]).obj());
+ }
+
+ return java_array;
+ }
+
+ Schema schema_;
};
-TEST_F(PolicyManagerTest, ConvertToNullValue) {
- policy::Schema null_schema = schema_.GetKnownProperty("null");
+TEST_F(PolicyConverterTest, ConvertToNullValue) {
+ Schema null_schema = schema_.GetKnownProperty("null");
ASSERT_TRUE(null_schema.valid());
EXPECT_EQ("null", Convert(new StringValue("foo"), null_schema));
}
-TEST_F(PolicyManagerTest, ConvertToBoolValue) {
- policy::Schema bool_schema = schema_.GetKnownProperty("bool");
+TEST_F(PolicyConverterTest, ConvertToBoolValue) {
+ Schema bool_schema = schema_.GetKnownProperty("bool");
ASSERT_TRUE(bool_schema.valid());
EXPECT_EQ("true", Convert(new FundamentalValue(true), bool_schema));
@@ -79,8 +113,8 @@ TEST_F(PolicyManagerTest, ConvertToBoolValue) {
EXPECT_EQ("{}", Convert(new DictionaryValue(), bool_schema));
}
-TEST_F(PolicyManagerTest, ConvertToIntValue) {
- policy::Schema int_schema = schema_.GetKnownProperty("int");
+TEST_F(PolicyConverterTest, ConvertToIntValue) {
+ Schema int_schema = schema_.GetKnownProperty("int");
ASSERT_TRUE(int_schema.valid());
EXPECT_EQ("23", Convert(new FundamentalValue(23), int_schema));
@@ -90,8 +124,8 @@ TEST_F(PolicyManagerTest, ConvertToIntValue) {
EXPECT_EQ("false", Convert(new FundamentalValue(false), int_schema));
}
-TEST_F(PolicyManagerTest, ConvertToDoubleValue) {
- policy::Schema double_schema = schema_.GetKnownProperty("double");
+TEST_F(PolicyConverterTest, ConvertToDoubleValue) {
+ Schema double_schema = schema_.GetKnownProperty("double");
ASSERT_TRUE(double_schema.valid());
EXPECT_EQ("3", Convert(new FundamentalValue(3), double_schema));
@@ -101,16 +135,16 @@ TEST_F(PolicyManagerTest, ConvertToDoubleValue) {
EXPECT_EQ("true", Convert(new FundamentalValue(true), double_schema));
}
-TEST_F(PolicyManagerTest, ConvertToStringValue) {
- policy::Schema string_schema = schema_.GetKnownProperty("string");
+TEST_F(PolicyConverterTest, ConvertToStringValue) {
+ Schema string_schema = schema_.GetKnownProperty("string");
ASSERT_TRUE(string_schema.valid());
EXPECT_EQ("\"troz\"", Convert(new StringValue("troz"), string_schema));
EXPECT_EQ("4711", Convert(new FundamentalValue(4711), string_schema));
}
-TEST_F(PolicyManagerTest, ConvertToListValue) {
- policy::Schema list_schema = schema_.GetKnownProperty("list");
+TEST_F(PolicyConverterTest, ConvertToListValue) {
+ Schema list_schema = schema_.GetKnownProperty("list");
ASSERT_TRUE(list_schema.valid());
ListValue* list = new ListValue;
@@ -123,8 +157,18 @@ TEST_F(PolicyManagerTest, ConvertToListValue) {
EXPECT_EQ("19", Convert(new FundamentalValue(19), list_schema));
}
-TEST_F(PolicyManagerTest, ConvertToDictionaryValue) {
- policy::Schema dict_schema = schema_.GetKnownProperty("dict");
+TEST_F(PolicyConverterTest, ConvertFromJavaListToListValue) {
+ JNIEnv* env = base::android::AttachCurrentThread();
+ EXPECT_EQ("[\"foo\",\"bar\",\"baz\"]",
+ ConvertJavaStringArrayToListValue(
+ env, MakeJavaStringArray(env, {"foo", "bar", "baz"})));
+ EXPECT_EQ("[]", ConvertJavaStringArrayToListValue(
+ env, MakeJavaStringArray(env, {})));
+ EXPECT_EQ("[]", ConvertJavaStringArrayToListValue(env, jobjectArray()));
+}
+
+TEST_F(PolicyConverterTest, ConvertToDictionaryValue) {
+ Schema dict_schema = schema_.GetKnownProperty("dict");
ASSERT_TRUE(dict_schema.valid());
DictionaryValue* dict = new DictionaryValue;
@@ -135,3 +179,6 @@ TEST_F(PolicyManagerTest, ConvertToDictionaryValue) {
EXPECT_EQ("\"fnord\"", Convert(new StringValue("fnord"), dict_schema));
EXPECT_EQ("1729", Convert(new FundamentalValue(1729), dict_schema));
}
+
+} // namespace android
+} // namespace policy

Powered by Google App Engine
This is Rietveld 408576698