Index: chrome/common/extensions/api/extension_api_unittest.cc |
diff --git a/chrome/common/extensions/api/extension_api_unittest.cc b/chrome/common/extensions/api/extension_api_unittest.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..13adedbf9618bb94acb71422fe00c72ae7d31705 |
--- /dev/null |
+++ b/chrome/common/extensions/api/extension_api_unittest.cc |
@@ -0,0 +1,28 @@ |
+// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "chrome/common/extensions/api/extension_api.h" |
+ |
+#include "testing/gtest/include/gtest/gtest.h" |
+ |
+using extensions::ExtensionAPI; |
+ |
+TEST(ExtensionAPI, Unprivileged) { |
+ ExtensionAPI* extension_api = ExtensionAPI::GetInstance(); |
+ EXPECT_TRUE(extension_api->IsFullNameUnprivileged("extension.connect")); |
+ EXPECT_TRUE(extension_api->IsFullNameUnprivileged("extension.onConnect")); |
+ |
+ // Properties are not supported yet. |
+ EXPECT_FALSE(extension_api->IsFullNameUnprivileged("extension.lastError")); |
+ |
+ // Garbage in. |
+ EXPECT_FALSE(extension_api->IsFullNameUnprivileged("")); |
+ EXPECT_FALSE(extension_api->IsFullNameUnprivileged("<unknown-namespace>")); |
+ EXPECT_FALSE(extension_api->IsFullNameUnprivileged( |
+ "extension.<unknown-member>")); |
+ |
+ // Exists, but privileged. |
+ EXPECT_FALSE(extension_api->IsFullNameUnprivileged("extension.getViews")); |
+ EXPECT_FALSE(extension_api->IsFullNameUnprivileged("history.search")); |
+} |