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

Unified Diff: chrome/browser/profiles/profile_downloader_unittest.cc

Issue 566933005: Do not display lock for hosted domains (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: ChromeOS test - part deux Created 6 years, 3 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
« no previous file with comments | « chrome/browser/profiles/profile_downloader.cc ('k') | chrome/browser/profiles/profile_manager.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/profiles/profile_downloader_unittest.cc
diff --git a/chrome/browser/profiles/profile_downloader_unittest.cc b/chrome/browser/profiles/profile_downloader_unittest.cc
index 3761c77ef2a8cbf0057de3d9198cc4930f975c9a..4bcfc6f59c20dc42b5ec4c8f8272e82844d783d5 100644
--- a/chrome/browser/profiles/profile_downloader_unittest.cc
+++ b/chrome/browser/profiles/profile_downloader_unittest.cc
@@ -4,38 +4,33 @@
#include "chrome/browser/profiles/profile_downloader.h"
+#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
-std::string GetJSonData(const std::string& full_name,
- const std::string& given_name,
- const std::string& url,
- const std::string& locale) {
- std::stringstream stream;
- bool started = false;
-
- stream << "{ ";
- if (!full_name.empty()) {
- stream << "\"name\": \"" << full_name << "\"";
- started = true;
- }
- if (!given_name.empty()) {
- stream << (started ? ", " : "") << "\"given_name\": \"" << given_name
- << "\"";
- started = true;
- }
- if (!url.empty()) {
- stream << (started ? ", " : "") << "\"picture\": \"" << url << "\"";
- started = true;
- }
+void GetJSonData(const std::string& full_name,
+ const std::string& given_name,
+ const std::string& url,
+ const std::string& locale,
+ const std::string& hosted_domain,
+ bool include_empty_hosted_domain,
+ base::DictionaryValue* dict) {
+ if (!full_name.empty())
+ dict->SetString("name", full_name);
+
+ if (!given_name.empty())
+ dict->SetString("given_name", given_name);
+
+ if (!url.empty())
+ dict->SetString("picture", url);
if (!locale.empty())
- stream << (started ? ", " : "") << "\"locale\": \"" << locale << "\"";
+ dict->SetString("locale", locale);
- stream << " }";
- return stream.str();
+ if (!hosted_domain.empty() || include_empty_hosted_domain)
+ dict->SetString("hd", hosted_domain);
}
} // namespace
@@ -53,26 +48,36 @@ class ProfileDownloaderTest : public testing::Test {
const std::string& url,
const std::string& expected_url,
const std::string& locale,
+ const std::string& hosted_domain,
+ bool include_empty_hosted_domain,
bool is_valid) {
base::string16 parsed_full_name;
base::string16 parsed_given_name;
std::string parsed_url;
std::string parsed_locale;
+ base::string16 parsed_hosted_domain;
+ scoped_ptr<base::DictionaryValue> dict(new base::DictionaryValue);
+ GetJSonData(full_name, given_name, url, locale, hosted_domain,
+ include_empty_hosted_domain, dict.get());
bool result = ProfileDownloader::ParseProfileJSON(
- GetJSonData(full_name, given_name, url, locale),
+ dict.get(),
&parsed_full_name,
&parsed_given_name,
&parsed_url,
32,
- &parsed_locale);
+ &parsed_locale,
+ &parsed_hosted_domain);
EXPECT_EQ(is_valid, result);
std::string parsed_full_name_utf8 = base::UTF16ToUTF8(parsed_full_name);
std::string parsed_given_name_utf8 = base::UTF16ToUTF8(parsed_given_name);
+ std::string parsed_hosted_domain_utf8 =
+ base::UTF16ToUTF8(parsed_hosted_domain);
EXPECT_EQ(full_name, parsed_full_name_utf8);
EXPECT_EQ(given_name, parsed_given_name_utf8);
EXPECT_EQ(expected_url, parsed_url);
EXPECT_EQ(locale, parsed_locale);
+ EXPECT_EQ(hosted_domain, parsed_hosted_domain_utf8);
}
};
@@ -84,6 +89,8 @@ TEST_F(ProfileDownloaderTest, ParseData) {
"https://example.com/--Abc/AAAAAAAAAAI/AAAAAAAAACQ/Efg/photo.jpg",
"https://example.com/--Abc/AAAAAAAAAAI/AAAAAAAAACQ/Efg/s32-c/photo.jpg",
"en-US",
+ "google.com",
+ false,
true);
// URL with size specified.
@@ -93,6 +100,8 @@ TEST_F(ProfileDownloaderTest, ParseData) {
"http://lh0.ggpht.com/-abcd1aBCDEf/AAAA/AAA_A/abc12/s64-c/1234567890.jpg",
"http://lh0.ggpht.com/-abcd1aBCDEf/AAAA/AAA_A/abc12/s32-c/1234567890.jpg",
"en-US",
+ "google.com",
+ false,
true);
// URL with unknown format.
@@ -101,6 +110,8 @@ TEST_F(ProfileDownloaderTest, ParseData) {
"http://lh0.ggpht.com/-abcd1aBCDEf/AAAA/AAA_A/",
"http://lh0.ggpht.com/-abcd1aBCDEf/AAAA/AAA_A/",
"en-US",
+ "google.com",
+ false,
true);
// Try different locales. URL with size specified.
@@ -110,6 +121,8 @@ TEST_F(ProfileDownloaderTest, ParseData) {
"http://lh0.ggpht.com/-abcd1aBCDEf/AAAA/AAA_A/abc12/s64-c/1234567890.jpg",
"http://lh0.ggpht.com/-abcd1aBCDEf/AAAA/AAA_A/abc12/s32-c/1234567890.jpg",
"jp",
+ "google.com",
+ false,
true);
// URL with unknown format.
@@ -118,11 +131,29 @@ TEST_F(ProfileDownloaderTest, ParseData) {
"http://lh0.ggpht.com/-abcd1aBCDEf/AAAA/AAA_A/",
"http://lh0.ggpht.com/-abcd1aBCDEf/AAAA/AAA_A/",
"fr",
+ "",
+ false,
true);
// Data with only name.
- VerifyWithAccountData(
- "Pat Smith", "Pat", std::string(), std::string(), std::string(), true);
+ VerifyWithAccountData("Pat Smith",
+ "Pat",
+ std::string(),
+ std::string(),
+ std::string(),
+ std::string(),
+ false,
+ true);
+
+ // Data with only name and a blank but present hosted domain.
+ VerifyWithAccountData("Pat Smith",
+ "Pat",
+ std::string(),
+ std::string(),
+ std::string(),
+ std::string(),
+ true,
+ true);
// Data with only URL.
VerifyWithAccountData(
@@ -131,11 +162,19 @@ TEST_F(ProfileDownloaderTest, ParseData) {
"https://example.com/--Abc/AAAAAAAAAAI/AAAAAAAAACQ/Efg/photo.jpg",
"https://example.com/--Abc/AAAAAAAAAAI/AAAAAAAAACQ/Efg/s32-c/photo.jpg",
std::string(),
+ std::string(),
+ false,
true);
// Data with only locale.
- VerifyWithAccountData(
- std::string(), std::string(), std::string(), std::string(), "fr", false);
+ VerifyWithAccountData(std::string(),
+ std::string(),
+ std::string(),
+ std::string(),
+ "fr",
+ std::string(),
+ false,
+ false);
// Data without name or URL or locale.
VerifyWithAccountData(std::string(),
@@ -143,6 +182,8 @@ TEST_F(ProfileDownloaderTest, ParseData) {
std::string(),
std::string(),
std::string(),
+ std::string(),
+ false,
false);
// Data with an invalid URL.
@@ -151,6 +192,8 @@ TEST_F(ProfileDownloaderTest, ParseData) {
"invalid url",
std::string(),
std::string(),
+ std::string(),
+ false,
false);
}
« no previous file with comments | « chrome/browser/profiles/profile_downloader.cc ('k') | chrome/browser/profiles/profile_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698