OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 <string> | 5 #include <string> |
6 | 6 |
7 #include "base/compiler_specific.h" | 7 #include "base/compiler_specific.h" |
8 #include "base/file_path.h" | 8 #include "base/file_path.h" |
9 #include "base/sys_info.h" | 9 #include "base/sys_info.h" |
10 #include "base/utf_string_conversions.h" | 10 #include "base/utf_string_conversions.h" |
(...skipping 572 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
583 ASSERT_TRUE(new_browser != browser()); | 583 ASSERT_TRUE(new_browser != browser()); |
584 | 584 |
585 // The browser's app_name should include the app's ID. | 585 // The browser's app_name should include the app's ID. |
586 ASSERT_NE( | 586 ASSERT_NE( |
587 new_browser->app_name_.find(extension_app->id()), | 587 new_browser->app_name_.find(extension_app->id()), |
588 std::string::npos) << new_browser->app_name_; | 588 std::string::npos) << new_browser->app_name_; |
589 } | 589 } |
590 #endif | 590 #endif |
591 | 591 |
592 #if defined(OS_WIN) | 592 #if defined(OS_WIN) |
593 // http://crbug.com/46198. On XP/Vista, the failure rate is 5 ~ 6%. | 593 // http://crbug.com/46198: On XP/Vista, the failure rate is 5 ~ 6%. |
594 #define MAYBE_PageLanguageDetection FLAKY_PageLanguageDetection | 594 #define MAYBE_PageLanguageDetection FLAKY_PageLanguageDetection |
595 #else | 595 #else |
596 #define MAYBE_PageLanguageDetection PageLanguageDetection | 596 #define MAYBE_PageLanguageDetection PageLanguageDetection |
597 #endif | 597 #endif |
598 // Tests that the CLD (Compact Language Detection) works properly. | 598 // Tests that the CLD (Compact Language Detection) works properly. |
599 IN_PROC_BROWSER_TEST_F(BrowserTest, MAYBE_PageLanguageDetection) { | 599 IN_PROC_BROWSER_TEST_F(BrowserTest, MAYBE_PageLanguageDetection) { |
600 ASSERT_TRUE(test_server()->Start()); | 600 ASSERT_TRUE(test_server()->Start()); |
601 | 601 |
| 602 std::string lang; |
| 603 |
| 604 // Open a new tab with a page in English. |
| 605 AddTabAtIndex(0, GURL(test_server()->GetURL("files/english_page.html")), |
| 606 PageTransition::TYPED); |
| 607 |
602 TabContents* current_tab = browser()->GetSelectedTabContents(); | 608 TabContents* current_tab = browser()->GetSelectedTabContents(); |
603 TabContentsWrapper* wrapper = browser()->GetSelectedTabContentsWrapper(); | 609 TabContentsWrapper* wrapper = browser()->GetSelectedTabContentsWrapper(); |
604 TranslateTabHelper* helper = wrapper->translate_tab_helper(); | 610 TranslateTabHelper* helper = wrapper->translate_tab_helper(); |
605 Source<TabContents> source(current_tab); | 611 Source<TabContents> source(current_tab); |
606 | 612 |
607 // Navigate to a page in English. | |
608 ui_test_utils::WindowedNotificationObserverWithDetails<std::string> | 613 ui_test_utils::WindowedNotificationObserverWithDetails<std::string> |
609 en_language_detected_signal(NotificationType::TAB_LANGUAGE_DETERMINED, | 614 en_language_detected_signal(NotificationType::TAB_LANGUAGE_DETERMINED, |
610 source); | 615 source); |
611 ui_test_utils::NavigateToURL( | |
612 browser(), GURL(test_server()->GetURL("files/english_page.html"))); | |
613 EXPECT_TRUE(helper->language_state().original_language().empty()); | 616 EXPECT_TRUE(helper->language_state().original_language().empty()); |
614 en_language_detected_signal.Wait(); | 617 en_language_detected_signal.Wait(); |
615 std::string lang; | |
616 EXPECT_TRUE(en_language_detected_signal.GetDetailsFor( | 618 EXPECT_TRUE(en_language_detected_signal.GetDetailsFor( |
617 source.map_key(), &lang)); | 619 source.map_key(), &lang)); |
618 EXPECT_EQ("en", lang); | 620 EXPECT_EQ("en", lang); |
619 EXPECT_EQ("en", helper->language_state().original_language()); | 621 EXPECT_EQ("en", helper->language_state().original_language()); |
620 | 622 |
621 // Now navigate to a page in French. | 623 // Now navigate to a page in French. |
622 ui_test_utils::WindowedNotificationObserverWithDetails<std::string> | 624 ui_test_utils::WindowedNotificationObserverWithDetails<std::string> |
623 fr_language_detected_signal(NotificationType::TAB_LANGUAGE_DETERMINED, | 625 fr_language_detected_signal(NotificationType::TAB_LANGUAGE_DETERMINED, |
624 source); | 626 source); |
625 ui_test_utils::NavigateToURL( | 627 ui_test_utils::NavigateToURL( |
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
846 | 848 |
847 // The normal browser should now have four. | 849 // The normal browser should now have four. |
848 EXPECT_EQ(4, browser()->tab_count()); | 850 EXPECT_EQ(4, browser()->tab_count()); |
849 | 851 |
850 // Close the additional browsers. | 852 // Close the additional browsers. |
851 popup_browser->CloseAllTabs(); | 853 popup_browser->CloseAllTabs(); |
852 app_browser->CloseAllTabs(); | 854 app_browser->CloseAllTabs(); |
853 app_popup_browser->CloseAllTabs(); | 855 app_popup_browser->CloseAllTabs(); |
854 } | 856 } |
855 #endif | 857 #endif |
OLD | NEW |