| 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 | 5 |
| 6 #include <algorithm> | 6 #include <algorithm> |
| 7 #include <set> | 7 #include <set> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/json/json_writer.h" | 10 #include "base/json/json_writer.h" |
| (...skipping 613 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 624 std::vector<std::string> server_languages; | 624 std::vector<std::string> server_languages; |
| 625 // A list of languages to fake being returned by the translate server. | 625 // A list of languages to fake being returned by the translate server. |
| 626 server_languages.push_back("aa"); | 626 server_languages.push_back("aa"); |
| 627 server_languages.push_back("bb"); | 627 server_languages.push_back("bb"); |
| 628 server_languages.push_back("ab"); | 628 server_languages.push_back("ab"); |
| 629 server_languages.push_back("en-CA"); | 629 server_languages.push_back("en-CA"); |
| 630 server_languages.push_back("zz"); | 630 server_languages.push_back("zz"); |
| 631 server_languages.push_back("yy"); | 631 server_languages.push_back("yy"); |
| 632 server_languages.push_back("fr-FR"); | 632 server_languages.push_back("fr-FR"); |
| 633 | 633 |
| 634 // First, get the default languages list: | 634 // First, get the default languages list. Note that calling |
| 635 // GetSupportedLanguages() invokes RequestLanguageList() internally. |
| 635 std::vector<std::string> default_supported_languages; | 636 std::vector<std::string> default_supported_languages; |
| 636 TranslateManager::GetSupportedLanguages(&default_supported_languages); | 637 TranslateManager::GetSupportedLanguages(&default_supported_languages); |
| 637 // To make sure we got the defaults and don't confuse them with the mocks. | 638 // To make sure we got the defaults and don't confuse them with the mocks. |
| 638 ASSERT_NE(default_supported_languages.size(), server_languages.size()); | 639 ASSERT_NE(default_supported_languages.size(), server_languages.size()); |
| 639 | 640 |
| 640 Profile* profile = | |
| 641 Profile::FromBrowserContext(web_contents()->GetBrowserContext()); | |
| 642 PrefService* prefs = profile->GetPrefs(); | |
| 643 TranslateManager::GetInstance()->FetchLanguageListFromTranslateServer(prefs); | |
| 644 | 641 |
| 645 // Check that we still get the defaults until the URLFetch has completed. | 642 // Check that we still get the defaults until the URLFetch has completed. |
| 646 std::vector<std::string> current_supported_languages; | 643 std::vector<std::string> current_supported_languages; |
| 647 TranslateManager::GetSupportedLanguages(¤t_supported_languages); | 644 TranslateManager::GetSupportedLanguages(¤t_supported_languages); |
| 648 EXPECT_EQ(default_supported_languages, current_supported_languages); | 645 EXPECT_EQ(default_supported_languages, current_supported_languages); |
| 649 | 646 |
| 650 // Also check that it didn't change if we failed the URL fetch. | 647 // Also check that it didn't change if we failed the URL fetch. |
| 651 SimulateSupportedLanguagesURLFetch(false, std::vector<std::string>()); | 648 SimulateSupportedLanguagesURLFetch(false, std::vector<std::string>()); |
| 652 current_supported_languages.clear(); | 649 current_supported_languages.clear(); |
| 653 TranslateManager::GetSupportedLanguages(¤t_supported_languages); | 650 TranslateManager::GetSupportedLanguages(¤t_supported_languages); |
| 654 EXPECT_EQ(default_supported_languages, current_supported_languages); | 651 EXPECT_EQ(default_supported_languages, current_supported_languages); |
| 655 | 652 |
| 656 // Now check that we got the appropriate set of languages from the server. | 653 // Now check that we got the appropriate set of languages from the server. |
| 657 TranslateManager::GetInstance()->FetchLanguageListFromTranslateServer(prefs); | |
| 658 SimulateSupportedLanguagesURLFetch(true, server_languages); | 654 SimulateSupportedLanguagesURLFetch(true, server_languages); |
| 659 current_supported_languages.clear(); | 655 current_supported_languages.clear(); |
| 660 TranslateManager::GetSupportedLanguages(¤t_supported_languages); | 656 TranslateManager::GetSupportedLanguages(¤t_supported_languages); |
| 661 // Not sure we need to guarantee the order of languages, so we find them. | 657 // Not sure we need to guarantee the order of languages, so we find them. |
| 662 EXPECT_EQ(server_languages.size(), current_supported_languages.size()); | 658 EXPECT_EQ(server_languages.size(), current_supported_languages.size()); |
| 663 for (size_t i = 0; i < server_languages.size(); ++i) { | 659 for (size_t i = 0; i < server_languages.size(); ++i) { |
| 664 EXPECT_NE(current_supported_languages.end(), | 660 EXPECT_NE(current_supported_languages.end(), |
| 665 std::find(current_supported_languages.begin(), | 661 std::find(current_supported_languages.begin(), |
| 666 current_supported_languages.end(), | 662 current_supported_languages.end(), |
| 667 server_languages[i])); | 663 server_languages[i])); |
| (...skipping 855 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1523 WebContents* current_web_contents = | 1519 WebContents* current_web_contents = |
| 1524 browser()->tab_strip_model()->GetActiveWebContents(); | 1520 browser()->tab_strip_model()->GetActiveWebContents(); |
| 1525 content::Source<WebContents> source(current_web_contents); | 1521 content::Source<WebContents> source(current_web_contents); |
| 1526 | 1522 |
| 1527 ui_test_utils::WindowedNotificationObserverWithDetails< | 1523 ui_test_utils::WindowedNotificationObserverWithDetails< |
| 1528 LanguageDetectionDetails> | 1524 LanguageDetectionDetails> |
| 1529 fr_language_detected_signal(chrome::NOTIFICATION_TAB_LANGUAGE_DETERMINED, | 1525 fr_language_detected_signal(chrome::NOTIFICATION_TAB_LANGUAGE_DETERMINED, |
| 1530 source); | 1526 source); |
| 1531 fr_language_detected_signal.Wait(); | 1527 fr_language_detected_signal.Wait(); |
| 1532 } | 1528 } |
| OLD | NEW |