| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "chrome/browser/search/hotword_service.h" | 5 #include "chrome/browser/search/hotword_service.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 156 } | 156 } |
| 157 | 157 |
| 158 std::string extension_id_; | 158 std::string extension_id_; |
| 159 }; | 159 }; |
| 160 | 160 |
| 161 INSTANTIATE_TEST_CASE_P(HotwordServiceTests, | 161 INSTANTIATE_TEST_CASE_P(HotwordServiceTests, |
| 162 HotwordServiceTest, | 162 HotwordServiceTest, |
| 163 ::testing::Values( | 163 ::testing::Values( |
| 164 extension_misc::kHotwordSharedModuleId)); | 164 extension_misc::kHotwordSharedModuleId)); |
| 165 | 165 |
| 166 // Disabled due to http://crbug.com/503963. | 166 TEST_P(HotwordServiceTest, IsHotwordAllowedLocale) { |
| 167 TEST_P(HotwordServiceTest, DISABLED_IsHotwordAllowedLocale) { | |
| 168 TestingProfile::Builder profile_builder; | 167 TestingProfile::Builder profile_builder; |
| 169 scoped_ptr<TestingProfile> profile = profile_builder.Build(); | 168 scoped_ptr<TestingProfile> profile = profile_builder.Build(); |
| 170 | 169 |
| 171 #if defined(ENABLE_HOTWORDING) | 170 #if defined(ENABLE_HOTWORDING) |
| 172 bool hotwording_enabled = true; | 171 bool hotwording_enabled = true; |
| 173 #else | 172 #else |
| 174 bool hotwording_enabled = false; | 173 bool hotwording_enabled = false; |
| 175 #endif | 174 #endif |
| 176 | 175 |
| 177 // Check that the service exists so that a NULL service be ruled out in | 176 // Check that the service exists so that a NULL service be ruled out in |
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 299 | 298 |
| 300 // The previous locale should be set but should match the current | 299 // The previous locale should be set but should match the current |
| 301 // locale. No reason to uninstall. | 300 // locale. No reason to uninstall. |
| 302 EXPECT_FALSE(hotword_service->MaybeReinstallHotwordExtension()); | 301 EXPECT_FALSE(hotword_service->MaybeReinstallHotwordExtension()); |
| 303 | 302 |
| 304 // Switch the locale to a valid but different one. | 303 // Switch the locale to a valid but different one. |
| 305 SetApplicationLocale(profile(), "fr_fr"); | 304 SetApplicationLocale(profile(), "fr_fr"); |
| 306 #if defined(ENABLE_HOTWORDING) | 305 #if defined(ENABLE_HOTWORDING) |
| 307 EXPECT_TRUE(HotwordServiceFactory::IsHotwordAllowed(profile())); | 306 EXPECT_TRUE(HotwordServiceFactory::IsHotwordAllowed(profile())); |
| 308 #else | 307 #else |
| 309 // Disabled due to http://crbug.com/503963. | 308 EXPECT_FALSE(HotwordServiceFactory::IsHotwordAllowed(profile())); |
| 310 // EXPECT_FALSE(HotwordServiceFactory::IsHotwordAllowed(profile())); | |
| 311 #endif | 309 #endif |
| 312 | 310 |
| 313 // Different but valid locale so expect uninstall. | 311 // Different but valid locale so expect uninstall. |
| 314 EXPECT_TRUE(hotword_service->MaybeReinstallHotwordExtension()); | 312 EXPECT_TRUE(hotword_service->MaybeReinstallHotwordExtension()); |
| 315 EXPECT_EQ(1, hotword_service->uninstall_count()); | 313 EXPECT_EQ(1, hotword_service->uninstall_count()); |
| 316 EXPECT_EQ("fr_fr", | 314 EXPECT_EQ("fr_fr", |
| 317 profile()->GetPrefs()->GetString(prefs::kHotwordPreviousLanguage)); | 315 profile()->GetPrefs()->GetString(prefs::kHotwordPreviousLanguage)); |
| 318 | 316 |
| 319 if (extension_id_ == extension_misc::kHotwordSharedModuleId) { | 317 if (extension_id_ == extension_misc::kHotwordSharedModuleId) { |
| 320 // Shared module is installed and enabled. | 318 // Shared module is installed and enabled. |
| 321 EXPECT_TRUE(registry()->enabled_extensions().Contains(extension_id_)); | 319 EXPECT_TRUE(registry()->enabled_extensions().Contains(extension_id_)); |
| 322 } else { | 320 } else { |
| 323 // Verify the extension is installed. It's still disabled. | 321 // Verify the extension is installed. It's still disabled. |
| 324 EXPECT_TRUE(registry()->disabled_extensions().Contains(extension_id_)); | 322 EXPECT_TRUE(registry()->disabled_extensions().Contains(extension_id_)); |
| 325 } | 323 } |
| 326 | 324 |
| 327 // Switch the locale to an invalid one. | 325 // Switch the locale to an invalid one. |
| 328 SetApplicationLocale(profile(), "invalid"); | 326 SetApplicationLocale(profile(), "invalid"); |
| 329 EXPECT_FALSE(HotwordServiceFactory::IsHotwordAllowed(profile())); | 327 EXPECT_FALSE(HotwordServiceFactory::IsHotwordAllowed(profile())); |
| 330 EXPECT_FALSE(hotword_service->MaybeReinstallHotwordExtension()); | 328 EXPECT_FALSE(hotword_service->MaybeReinstallHotwordExtension()); |
| 331 EXPECT_EQ("fr_fr", | 329 EXPECT_EQ("fr_fr", |
| 332 profile()->GetPrefs()->GetString(prefs::kHotwordPreviousLanguage)); | 330 profile()->GetPrefs()->GetString(prefs::kHotwordPreviousLanguage)); |
| 333 | 331 |
| 334 // If the locale is set back to the last valid one, then an uninstall-install | 332 // If the locale is set back to the last valid one, then an uninstall-install |
| 335 // shouldn't be needed. | 333 // shouldn't be needed. |
| 336 SetApplicationLocale(profile(), "fr_fr"); | 334 SetApplicationLocale(profile(), "fr_fr"); |
| 337 #if defined(ENABLE_HOTWORDING) | 335 #if defined(ENABLE_HOTWORDING) |
| 338 EXPECT_TRUE(HotwordServiceFactory::IsHotwordAllowed(profile())); | 336 EXPECT_TRUE(HotwordServiceFactory::IsHotwordAllowed(profile())); |
| 339 #else | 337 #else |
| 340 // Disabled due to http://crbug.com/503963. | 338 EXPECT_FALSE(HotwordServiceFactory::IsHotwordAllowed(profile())); |
| 341 // EXPECT_FALSE(HotwordServiceFactory::IsHotwordAllowed(profile())); | |
| 342 #endif | 339 #endif |
| 343 EXPECT_FALSE(hotword_service->MaybeReinstallHotwordExtension()); | 340 EXPECT_FALSE(hotword_service->MaybeReinstallHotwordExtension()); |
| 344 EXPECT_EQ(1, hotword_service->uninstall_count()); // no change | 341 EXPECT_EQ(1, hotword_service->uninstall_count()); // no change |
| 345 } | 342 } |
| 346 | 343 |
| 347 TEST_P(HotwordServiceTest, DisableAlwaysOnOnLanguageChange) { | 344 TEST_P(HotwordServiceTest, DisableAlwaysOnOnLanguageChange) { |
| 348 // Bypass test for old hotwording. | 345 // Bypass test for old hotwording. |
| 349 if (extension_id_ != extension_misc::kHotwordSharedModuleId) | 346 if (extension_id_ != extension_misc::kHotwordSharedModuleId) |
| 350 return; | 347 return; |
| 351 | 348 |
| (...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 524 EXPECT_EQ(1, audio_history_handler->GetAudioHistoryCalls()); | 521 EXPECT_EQ(1, audio_history_handler->GetAudioHistoryCalls()); |
| 525 // We expect the next check for audio history to be in the queue. | 522 // We expect the next check for audio history to be in the queue. |
| 526 EXPECT_EQ(base::TimeDelta::FromDays(1), | 523 EXPECT_EQ(base::TimeDelta::FromDays(1), |
| 527 test_task_runner->NextPendingTaskDelay()); | 524 test_task_runner->NextPendingTaskDelay()); |
| 528 EXPECT_TRUE(test_task_runner->HasPendingTask()); | 525 EXPECT_TRUE(test_task_runner->HasPendingTask()); |
| 529 test_task_runner->RunPendingTasks(); | 526 test_task_runner->RunPendingTasks(); |
| 530 EXPECT_EQ(2, audio_history_handler->GetAudioHistoryCalls()); | 527 EXPECT_EQ(2, audio_history_handler->GetAudioHistoryCalls()); |
| 531 EXPECT_TRUE(test_task_runner->HasPendingTask()); | 528 EXPECT_TRUE(test_task_runner->HasPendingTask()); |
| 532 test_task_runner->ClearPendingTasks(); | 529 test_task_runner->ClearPendingTasks(); |
| 533 } | 530 } |
| OLD | NEW |