| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "base/command_line.h" | 5 #include "base/command_line.h" |
| 6 #include "base/utf_string_conversions.h" | 6 #include "base/utf_string_conversions.h" |
| 7 #include "chrome/browser/google/google_url_tracker.h" | 7 #include "chrome/browser/google/google_url_tracker.h" |
| 8 #include "chrome/browser/google/google_util.h" | 8 #include "chrome/browser/google/google_util.h" |
| 9 #include "chrome/common/chrome_switches.h" | 9 #include "chrome/common/chrome_switches.h" |
| 10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
| (...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 "http://www.google.com/search?q=something&vespv=1")); | 272 "http://www.google.com/search?q=something&vespv=1")); |
| 273 EXPECT_FALSE(IsInstantExtendedAPIGoogleSearchUrl( | 273 EXPECT_FALSE(IsInstantExtendedAPIGoogleSearchUrl( |
| 274 "http://www.google.com/search?q=something&espvx=1")); | 274 "http://www.google.com/search?q=something&espvx=1")); |
| 275 EXPECT_FALSE(IsInstantExtendedAPIGoogleSearchUrl( | 275 EXPECT_FALSE(IsInstantExtendedAPIGoogleSearchUrl( |
| 276 "http://www.google.com/search#q=something&espv=1")); | 276 "http://www.google.com/search#q=something&espv=1")); |
| 277 } | 277 } |
| 278 | 278 |
| 279 TEST(GoogleUtilTest, GoogleDomains) { | 279 TEST(GoogleUtilTest, GoogleDomains) { |
| 280 // Test some good Google domains (valid TLDs). | 280 // Test some good Google domains (valid TLDs). |
| 281 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com", | 281 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com", |
| 282 google_util::ALLOW_SUBDOMAIN)); | 282 google_util::ALLOW_SUBDOMAIN, |
| 283 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 283 EXPECT_TRUE(IsGoogleDomainUrl("http://google.com", | 284 EXPECT_TRUE(IsGoogleDomainUrl("http://google.com", |
| 284 google_util::ALLOW_SUBDOMAIN)); | 285 google_util::ALLOW_SUBDOMAIN, |
| 286 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 285 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.ca", | 287 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.ca", |
| 286 google_util::ALLOW_SUBDOMAIN)); | 288 google_util::ALLOW_SUBDOMAIN, |
| 289 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 287 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.biz.tj", | 290 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.biz.tj", |
| 288 google_util::ALLOW_SUBDOMAIN)); | 291 google_util::ALLOW_SUBDOMAIN, |
| 292 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 289 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com/search?q=something", | 293 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com/search?q=something", |
| 290 google_util::ALLOW_SUBDOMAIN)); | 294 google_util::ALLOW_SUBDOMAIN, |
| 295 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 291 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com/webhp", | 296 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com/webhp", |
| 292 google_util::ALLOW_SUBDOMAIN)); | 297 google_util::ALLOW_SUBDOMAIN, |
| 298 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 293 | 299 |
| 294 // Test some bad Google domains (invalid TLDs). | 300 // Test some bad Google domains (invalid TLDs). |
| 295 EXPECT_FALSE(IsGoogleDomainUrl("http://www.google.notrealtld", | 301 EXPECT_FALSE(IsGoogleDomainUrl("http://www.google.notrealtld", |
| 296 google_util::ALLOW_SUBDOMAIN)); | 302 google_util::ALLOW_SUBDOMAIN, |
| 303 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 297 EXPECT_FALSE(IsGoogleDomainUrl("http://www.google.faketld/search?q=something", | 304 EXPECT_FALSE(IsGoogleDomainUrl("http://www.google.faketld/search?q=something", |
| 298 google_util::ALLOW_SUBDOMAIN)); | 305 google_util::ALLOW_SUBDOMAIN, |
| 306 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 299 EXPECT_FALSE(IsGoogleDomainUrl("http://www.yahoo.com", | 307 EXPECT_FALSE(IsGoogleDomainUrl("http://www.yahoo.com", |
| 300 google_util::ALLOW_SUBDOMAIN)); | 308 google_util::ALLOW_SUBDOMAIN, |
| 309 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 301 | 310 |
| 302 // Test subdomain checks. | 311 // Test subdomain checks. |
| 303 EXPECT_TRUE(IsGoogleDomainUrl("http://images.google.com", | 312 EXPECT_TRUE(IsGoogleDomainUrl("http://images.google.com", |
| 304 google_util::ALLOW_SUBDOMAIN)); | 313 google_util::ALLOW_SUBDOMAIN, |
| 314 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 305 EXPECT_FALSE(IsGoogleDomainUrl("http://images.google.com", | 315 EXPECT_FALSE(IsGoogleDomainUrl("http://images.google.com", |
| 306 google_util::DISALLOW_SUBDOMAIN)); | 316 google_util::DISALLOW_SUBDOMAIN, |
| 317 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 307 EXPECT_TRUE(IsGoogleDomainUrl("http://google.com", | 318 EXPECT_TRUE(IsGoogleDomainUrl("http://google.com", |
| 308 google_util::DISALLOW_SUBDOMAIN)); | 319 google_util::DISALLOW_SUBDOMAIN, |
| 320 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 309 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com", | 321 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com", |
| 310 google_util::DISALLOW_SUBDOMAIN)); | 322 google_util::DISALLOW_SUBDOMAIN, |
| 323 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 311 | 324 |
| 312 // Port and scheme checks. | 325 // Port and scheme checks. |
| 313 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com:80", | 326 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com:80", |
| 314 google_util::DISALLOW_SUBDOMAIN)); | 327 google_util::DISALLOW_SUBDOMAIN, |
| 328 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 315 EXPECT_FALSE(IsGoogleDomainUrl("http://www.google.com:123", | 329 EXPECT_FALSE(IsGoogleDomainUrl("http://www.google.com:123", |
| 316 google_util::DISALLOW_SUBDOMAIN)); | 330 google_util::DISALLOW_SUBDOMAIN, |
| 331 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 317 EXPECT_TRUE(IsGoogleDomainUrl("https://www.google.com:443", | 332 EXPECT_TRUE(IsGoogleDomainUrl("https://www.google.com:443", |
| 318 google_util::DISALLOW_SUBDOMAIN)); | 333 google_util::DISALLOW_SUBDOMAIN, |
| 319 EXPECT_FALSE(IsGoogleDomainUrl("https://www.google.com:123", | 334 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 320 google_util::DISALLOW_SUBDOMAIN)); | 335 EXPECT_FALSE(IsGoogleDomainUrl("http://www.google.com:123", |
| 336 google_util::DISALLOW_SUBDOMAIN, |
| 337 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 338 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com:123", |
| 339 google_util::DISALLOW_SUBDOMAIN, |
| 340 google_util::ALLOW_NON_STANDARD_PORTS)); |
| 341 EXPECT_TRUE(IsGoogleDomainUrl("https://www.google.com:123", |
| 342 google_util::DISALLOW_SUBDOMAIN, |
| 343 google_util::ALLOW_NON_STANDARD_PORTS)); |
| 344 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com:80", |
| 345 google_util::DISALLOW_SUBDOMAIN, |
| 346 google_util::ALLOW_NON_STANDARD_PORTS)); |
| 347 EXPECT_TRUE(IsGoogleDomainUrl("https://www.google.com:443", |
| 348 google_util::DISALLOW_SUBDOMAIN, |
| 349 google_util::ALLOW_NON_STANDARD_PORTS)); |
| 321 EXPECT_FALSE(IsGoogleDomainUrl("file://www.google.com", | 350 EXPECT_FALSE(IsGoogleDomainUrl("file://www.google.com", |
| 322 google_util::DISALLOW_SUBDOMAIN)); | 351 google_util::DISALLOW_SUBDOMAIN, |
| 352 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 323 EXPECT_FALSE(IsGoogleDomainUrl("doesnotexist://www.google.com", | 353 EXPECT_FALSE(IsGoogleDomainUrl("doesnotexist://www.google.com", |
| 324 google_util::DISALLOW_SUBDOMAIN)); | 354 google_util::DISALLOW_SUBDOMAIN, |
| 355 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 325 | 356 |
| 326 // Test overriding with --instant-url works. | 357 // Test overriding with --instant-url works. |
| 327 EXPECT_FALSE(IsGoogleDomainUrl("http://test.foo.com", | 358 EXPECT_FALSE(IsGoogleDomainUrl("http://test.foo.com", |
| 328 google_util::DISALLOW_SUBDOMAIN)); | 359 google_util::DISALLOW_SUBDOMAIN, |
| 360 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 329 EXPECT_FALSE(IsGoogleDomainUrl("http://test.foo.com:1234", | 361 EXPECT_FALSE(IsGoogleDomainUrl("http://test.foo.com:1234", |
| 330 google_util::DISALLOW_SUBDOMAIN)); | 362 google_util::DISALLOW_SUBDOMAIN, |
| 363 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 331 CommandLine::ForCurrentProcess()->AppendSwitchASCII( | 364 CommandLine::ForCurrentProcess()->AppendSwitchASCII( |
| 332 switches::kInstantURL, "http://test.foo.com:1234/bar"); | 365 switches::kInstantURL, "http://test.foo.com:1234/bar"); |
| 333 EXPECT_FALSE(IsGoogleDomainUrl("http://test.foo.com", | 366 EXPECT_FALSE(IsGoogleDomainUrl("http://test.foo.com", |
| 334 google_util::DISALLOW_SUBDOMAIN)); | 367 google_util::DISALLOW_SUBDOMAIN, |
| 368 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 335 EXPECT_TRUE(IsGoogleDomainUrl("http://test.foo.com:1234", | 369 EXPECT_TRUE(IsGoogleDomainUrl("http://test.foo.com:1234", |
| 336 google_util::DISALLOW_SUBDOMAIN)); | 370 google_util::DISALLOW_SUBDOMAIN, |
| 371 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 337 EXPECT_FALSE(IsGoogleDomainUrl("file://test.foo.com:1234", | 372 EXPECT_FALSE(IsGoogleDomainUrl("file://test.foo.com:1234", |
| 338 google_util::DISALLOW_SUBDOMAIN)); | 373 google_util::DISALLOW_SUBDOMAIN, |
| 374 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 339 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com", | 375 EXPECT_TRUE(IsGoogleDomainUrl("http://www.google.com", |
| 340 google_util::DISALLOW_SUBDOMAIN)); | 376 google_util::DISALLOW_SUBDOMAIN, |
| 377 google_util::DISALLOW_NON_STANDARD_PORTS)); |
| 341 } | 378 } |
| 342 | 379 |
| 343 TEST(GoogleUtilTest, SearchTerms) { | 380 TEST(GoogleUtilTest, SearchTerms) { |
| 344 // Simple searches. | 381 // Simple searches. |
| 345 EXPECT_EQ(string16(), google_util::GetSearchTermsFromGoogleSearchURL( | 382 EXPECT_EQ(string16(), google_util::GetSearchTermsFromGoogleSearchURL( |
| 346 "http://google.com/search?q=tractor+supply")); | 383 "http://google.com/search?q=tractor+supply")); |
| 347 EXPECT_EQ(ASCIIToUTF16("tractor supply"), | 384 EXPECT_EQ(ASCIIToUTF16("tractor supply"), |
| 348 google_util::GetSearchTermsFromGoogleSearchURL( | 385 google_util::GetSearchTermsFromGoogleSearchURL( |
| 349 "http://google.com/search?q=tractor+supply&espv=1")); | 386 "http://google.com/search?q=tractor+supply&espv=1")); |
| 350 // espv=1 only applies in query. | 387 // espv=1 only applies in query. |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 382 | 419 |
| 383 // Blank terms in ref override non-blank terms in query. | 420 // Blank terms in ref override non-blank terms in query. |
| 384 EXPECT_EQ(string16(), google_util::GetSearchTermsFromGoogleSearchURL( | 421 EXPECT_EQ(string16(), google_util::GetSearchTermsFromGoogleSearchURL( |
| 385 "http://google.com/search?q=potato&espv=1#q=")); | 422 "http://google.com/search?q=potato&espv=1#q=")); |
| 386 | 423 |
| 387 // Blank terms in query do not override non-blank terms in ref. | 424 // Blank terms in query do not override non-blank terms in ref. |
| 388 EXPECT_EQ(ASCIIToUTF16("tractor supply"), | 425 EXPECT_EQ(ASCIIToUTF16("tractor supply"), |
| 389 google_util::GetSearchTermsFromGoogleSearchURL( | 426 google_util::GetSearchTermsFromGoogleSearchURL( |
| 390 "http://google.com/search?q=&espv=1#q=tractor+supply")); | 427 "http://google.com/search?q=&espv=1#q=tractor+supply")); |
| 391 } | 428 } |
| OLD | NEW |