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

Unified Diff: chrome/browser/extensions/api/identity/identity_apitest.cc

Issue 337423002: Enable identity.email permission and chrome.identity.getProfileUserInfo API in stable (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: update permission string, getProfileUserInfo without email permission Created 6 years, 6 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: chrome/browser/extensions/api/identity/identity_apitest.cc
diff --git a/chrome/browser/extensions/api/identity/identity_apitest.cc b/chrome/browser/extensions/api/identity/identity_apitest.cc
index 7cc798fd44493c54a8679928e3235ea3d2674a97..737b330996d5a0385d4bf8ff2dc594d94547e8d1 100644
--- a/chrome/browser/extensions/api/identity/identity_apitest.cc
+++ b/chrome/browser/extensions/api/identity/identity_apitest.cc
@@ -595,10 +595,29 @@ class IdentityGetProfileUserInfoFunctionTest : public ExtensionBrowserTest {
utils::RunFunctionAndReturnSingleResult(func.get(), "[]", browser()));
return api::identity::ProfileUserInfo::FromValue(*value.get());
}
+
+ scoped_ptr<api::identity::ProfileUserInfo> RunGetProfileUserInfoWithEmail() {
+ scoped_refptr<IdentityGetProfileUserInfoFunction> func(
+ new IdentityGetProfileUserInfoFunction);
+ func->set_extension(CreateExtensionWithEmailPermission());
+ scoped_ptr<base::Value> value(
+ utils::RunFunctionAndReturnSingleResult(func.get(), "[]", browser()));
+ return api::identity::ProfileUserInfo::FromValue(*value.get());
+ }
+
+ private:
+ scoped_refptr<Extension> CreateExtensionWithEmailPermission() {
+ scoped_ptr<base::DictionaryValue> test_extension_value(
+ utils::ParseDictionary(
+ "{\"name\": \"Test\", \"version\": \"1.0\", "
+ "\"permissions\": [\"identity.email\"]}"));
+ return utils::CreateExtension(test_extension_value.get());
+ }
};
IN_PROC_BROWSER_TEST_F(IdentityGetProfileUserInfoFunctionTest, NotSignedIn) {
- scoped_ptr<api::identity::ProfileUserInfo> info = RunGetProfileUserInfo();
+ scoped_ptr<api::identity::ProfileUserInfo> info =
+ RunGetProfileUserInfoWithEmail();
EXPECT_TRUE(info->email.empty());
EXPECT_TRUE(info->id.empty());
}
@@ -609,11 +628,31 @@ IN_PROC_BROWSER_TEST_F(IdentityGetProfileUserInfoFunctionTest, SignedIn) {
profile()->GetPrefs()
->SetString(prefs::kGoogleServicesUserAccountId, "12345");
- scoped_ptr<api::identity::ProfileUserInfo> info = RunGetProfileUserInfo();
+ scoped_ptr<api::identity::ProfileUserInfo> info =
+ RunGetProfileUserInfoWithEmail();
EXPECT_EQ("president@example.com", info->email);
EXPECT_EQ("12345", info->id);
}
+IN_PROC_BROWSER_TEST_F(IdentityGetProfileUserInfoFunctionTest,
+ NotSignedInNoEmail) {
+ scoped_ptr<api::identity::ProfileUserInfo> info = RunGetProfileUserInfo();
+ EXPECT_TRUE(info->email.empty());
+ EXPECT_TRUE(info->id.empty());
+}
+
+IN_PROC_BROWSER_TEST_F(IdentityGetProfileUserInfoFunctionTest,
+ SignedInNoEmail) {
+ profile()->GetPrefs()->SetString(prefs::kGoogleServicesUsername,
+ "president@example.com");
+ profile()->GetPrefs()->SetString(prefs::kGoogleServicesUserAccountId,
+ "12345");
+
+ scoped_ptr<api::identity::ProfileUserInfo> info = RunGetProfileUserInfo();
+ EXPECT_TRUE(info->email.empty());
+ EXPECT_EQ("12345", info->id);
+}
+
class GetAuthTokenFunctionTest : public AsyncExtensionBrowserTest {
public:
virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
« no previous file with comments | « chrome/browser/extensions/api/identity/identity_api.cc ('k') | chrome/common/extensions/api/_api_features.json » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698