| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/metrics/field_trial.h" | 6 #include "base/metrics/field_trial.h" |
| 7 #include "base/metrics/histogram_base.h" | 7 #include "base/metrics/histogram_base.h" |
| 8 #include "base/metrics/histogram_samples.h" | 8 #include "base/metrics/histogram_samples.h" |
| 9 #include "base/metrics/statistics_recorder.h" | 9 #include "base/metrics/statistics_recorder.h" |
| 10 #include "base/prefs/pref_service.h" | 10 #include "base/prefs/pref_service.h" |
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 144 EXPECT_TRUE(IsInstantExtendedAPIEnabled()); | 144 EXPECT_TRUE(IsInstantExtendedAPIEnabled()); |
| 145 #if defined(OS_IOS) || defined(OS_ANDROID) | 145 #if defined(OS_IOS) || defined(OS_ANDROID) |
| 146 EXPECT_EQ(1ul, EmbeddedSearchPageVersion()); | 146 EXPECT_EQ(1ul, EmbeddedSearchPageVersion()); |
| 147 #else | 147 #else |
| 148 EXPECT_EQ(2ul, EmbeddedSearchPageVersion()); | 148 EXPECT_EQ(2ul, EmbeddedSearchPageVersion()); |
| 149 #endif | 149 #endif |
| 150 ValidateMetrics(INSTANT_EXTENDED_OPT_IN); | 150 ValidateMetrics(INSTANT_EXTENDED_OPT_IN); |
| 151 } | 151 } |
| 152 | 152 |
| 153 TEST_F(InstantExtendedAPIEnabledTest, EnabledViaFinchFlag) { | 153 TEST_F(InstantExtendedAPIEnabledTest, EnabledViaFinchFlag) { |
| 154 ASSERT_TRUE(base::FieldTrialList::CreateTrialsFromString( | 154 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("InstantExtended", |
| 155 "InstantExtended/Group1 espv:42/")); | 155 "Group1 espv:42")); |
| 156 EXPECT_TRUE(IsInstantExtendedAPIEnabled()); | 156 EXPECT_TRUE(IsInstantExtendedAPIEnabled()); |
| 157 EXPECT_EQ(42ul, EmbeddedSearchPageVersion()); | 157 EXPECT_EQ(42ul, EmbeddedSearchPageVersion()); |
| 158 ValidateMetrics(INSTANT_EXTENDED_NOT_SET); | 158 ValidateMetrics(INSTANT_EXTENDED_NOT_SET); |
| 159 } | 159 } |
| 160 | 160 |
| 161 TEST_F(InstantExtendedAPIEnabledTest, DisabledViaCommandLineFlag) { | 161 TEST_F(InstantExtendedAPIEnabledTest, DisabledViaCommandLineFlag) { |
| 162 GetCommandLine()->AppendSwitch(switches::kDisableInstantExtendedAPI); | 162 GetCommandLine()->AppendSwitch(switches::kDisableInstantExtendedAPI); |
| 163 ASSERT_TRUE(base::FieldTrialList::CreateTrialsFromString( | 163 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("InstantExtended", |
| 164 "InstantExtended/Group1 espv:2/")); | 164 "Group1 espv:2")); |
| 165 EXPECT_FALSE(IsInstantExtendedAPIEnabled()); | 165 EXPECT_FALSE(IsInstantExtendedAPIEnabled()); |
| 166 EXPECT_EQ(0ul, EmbeddedSearchPageVersion()); | 166 EXPECT_EQ(0ul, EmbeddedSearchPageVersion()); |
| 167 ValidateMetrics(INSTANT_EXTENDED_OPT_OUT); | 167 ValidateMetrics(INSTANT_EXTENDED_OPT_OUT); |
| 168 } | 168 } |
| 169 | 169 |
| 170 class SearchTest : public BrowserWithTestWindowTest { | 170 class SearchTest : public BrowserWithTestWindowTest { |
| 171 protected: | 171 protected: |
| 172 virtual void SetUp() OVERRIDE { | 172 virtual void SetUp() OVERRIDE { |
| 173 BrowserWithTestWindowTest::SetUp(); | 173 BrowserWithTestWindowTest::SetUp(); |
| 174 field_trial_list_.reset(new base::FieldTrialList( | 174 field_trial_list_.reset(new base::FieldTrialList( |
| (...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 444 SetDefaultInstantTemplateUrl(false); | 444 SetDefaultInstantTemplateUrl(false); |
| 445 | 445 |
| 446 EXPECT_FALSE(DefaultSearchProviderSupportsInstant(profile())); | 446 EXPECT_FALSE(DefaultSearchProviderSupportsInstant(profile())); |
| 447 } | 447 } |
| 448 | 448 |
| 449 TEST_F(SearchTest, IsInstantCheckboxEnabledExtendedEnabledWithInstant) { | 449 TEST_F(SearchTest, IsInstantCheckboxEnabledExtendedEnabledWithInstant) { |
| 450 // Enable instant extended. | 450 // Enable instant extended. |
| 451 EnableInstantExtendedAPIForTesting(); | 451 EnableInstantExtendedAPIForTesting(); |
| 452 | 452 |
| 453 // Enable Instant. | 453 // Enable Instant. |
| 454 ASSERT_TRUE(base::FieldTrialList::CreateTrialsFromString( | 454 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("InstantExtended", |
| 455 "InstantExtended/Group1 allow_instant:1/")); | 455 "Group1 allow_instant:1")); |
| 456 ASSERT_TRUE(IsInstantCheckboxVisible()); | 456 ASSERT_TRUE(IsInstantCheckboxVisible()); |
| 457 | 457 |
| 458 // Enable suggest. | 458 // Enable suggest. |
| 459 profile()->GetPrefs()->SetBoolean(prefs::kSearchSuggestEnabled, true); | 459 profile()->GetPrefs()->SetBoolean(prefs::kSearchSuggestEnabled, true); |
| 460 | 460 |
| 461 // Set an Instant URL with a valid search terms replacement key. | 461 // Set an Instant URL with a valid search terms replacement key. |
| 462 SetDefaultInstantTemplateUrl(true); | 462 SetDefaultInstantTemplateUrl(true); |
| 463 | 463 |
| 464 profile()->GetPrefs()->SetBoolean(prefs::kSearchInstantEnabled, true); | 464 profile()->GetPrefs()->SetBoolean(prefs::kSearchInstantEnabled, true); |
| 465 | 465 |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 579 EXPECT_EQ("http://www.bar.com/webhp?strk", instant_url.spec()); | 579 EXPECT_EQ("http://www.bar.com/webhp?strk", instant_url.spec()); |
| 580 | 580 |
| 581 // Similarly, setting a Google base URL on the command line should allow you | 581 // Similarly, setting a Google base URL on the command line should allow you |
| 582 // to get the Google version of the local NTP, even though search provider's | 582 // to get the Google version of the local NTP, even though search provider's |
| 583 // URL doesn't contain "google". | 583 // URL doesn't contain "google". |
| 584 local_instant_url = GetLocalInstantURL(profile()); | 584 local_instant_url = GetLocalInstantURL(profile()); |
| 585 EXPECT_EQ(GURL(chrome::kChromeSearchLocalGoogleNtpUrl), local_instant_url); | 585 EXPECT_EQ(GURL(chrome::kChromeSearchLocalGoogleNtpUrl), local_instant_url); |
| 586 } | 586 } |
| 587 | 587 |
| 588 } // namespace chrome | 588 } // namespace chrome |
| OLD | NEW |