| 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/basictypes.h" | 7 #include "base/basictypes.h" |
| 8 #include "base/memory/ref_counted.h" | 8 #include "base/memory/ref_counted.h" |
| 9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "base/string16.h" | 10 #include "base/string16.h" |
| 11 #include "base/utf_string_conversions.h" | 11 #include "base/utf_string_conversions.h" |
| 12 #include "chrome/browser/autofill/autofill_common_test.h" | 12 #include "chrome/browser/autofill/autofill_common_test.h" |
| 13 #include "chrome/browser/autofill/autofill_profile.h" | 13 #include "chrome/browser/autofill/autofill_profile.h" |
| 14 #include "chrome/browser/autofill/personal_data_manager.h" | 14 #include "chrome/browser/autofill/personal_data_manager.h" |
| 15 #include "chrome/browser/infobars/infobar_tab_helper.h" |
| 15 #include "chrome/browser/net/predictor_api.h" | 16 #include "chrome/browser/net/predictor_api.h" |
| 16 #include "chrome/browser/profiles/profile.h" | 17 #include "chrome/browser/profiles/profile.h" |
| 17 #include "chrome/browser/translate/translate_infobar_delegate.h" | 18 #include "chrome/browser/translate/translate_infobar_delegate.h" |
| 18 #include "chrome/browser/translate/translate_manager.h" | 19 #include "chrome/browser/translate/translate_manager.h" |
| 19 #include "chrome/browser/ui/browser.h" | 20 #include "chrome/browser/ui/browser.h" |
| 20 #include "chrome/browser/ui/browser_window.h" | 21 #include "chrome/browser/ui/browser_window.h" |
| 21 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" | 22 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" |
| 22 #include "chrome/common/chrome_notification_types.h" | 23 #include "chrome/common/chrome_notification_types.h" |
| 23 #include "chrome/common/render_messages.h" | 24 #include "chrome/common/render_messages.h" |
| 24 #include "chrome/renderer/translate_helper.h" | 25 #include "chrome/renderer/translate_helper.h" |
| (...skipping 477 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 502 "<label for=\"ph\">Phone number:</label>" | 503 "<label for=\"ph\">Phone number:</label>" |
| 503 " <input type=\"text\" id=\"ph\" /><br />" | 504 " <input type=\"text\" id=\"ph\" /><br />" |
| 504 "</form>"); | 505 "</form>"); |
| 505 ASSERT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser())); | 506 ASSERT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser())); |
| 506 ASSERT_NO_FATAL_FAILURE(ui_test_utils::NavigateToURL(browser(), url)); | 507 ASSERT_NO_FATAL_FAILURE(ui_test_utils::NavigateToURL(browser(), url)); |
| 507 | 508 |
| 508 // Get translation bar. | 509 // Get translation bar. |
| 509 render_view_host()->OnMessageReceived( | 510 render_view_host()->OnMessageReceived( |
| 510 ChromeViewHostMsg_TranslateLanguageDetermined(0, "ja", true)); | 511 ChromeViewHostMsg_TranslateLanguageDetermined(0, "ja", true)); |
| 511 TranslateInfoBarDelegate* infobar = | 512 TranslateInfoBarDelegate* infobar = |
| 512 browser()->GetSelectedTabContentsWrapper()-> | 513 browser()->GetSelectedTabContentsWrapper()->infobar_tab_helper()-> |
| 513 GetInfoBarDelegateAt(0)->AsTranslateInfoBarDelegate(); | 514 GetInfoBarDelegateAt(0)->AsTranslateInfoBarDelegate(); |
| 514 | 515 |
| 515 ASSERT_TRUE(infobar != NULL); | 516 ASSERT_TRUE(infobar != NULL); |
| 516 EXPECT_EQ(TranslateInfoBarDelegate::BEFORE_TRANSLATE, infobar->type()); | 517 EXPECT_EQ(TranslateInfoBarDelegate::BEFORE_TRANSLATE, infobar->type()); |
| 517 | 518 |
| 518 // Simulate translation button press. | 519 // Simulate translation button press. |
| 519 infobar->Translate(); | 520 infobar->Translate(); |
| 520 | 521 |
| 521 // Simulate the translate script being retrieved. | 522 // Simulate the translate script being retrieved. |
| 522 // Pass fake google.translate lib as the translate script. | 523 // Pass fake google.translate lib as the translate script. |
| 523 SimulateURLFetch(true); | 524 SimulateURLFetch(true); |
| 524 | 525 |
| 525 // Simulate translation to kick onTranslateElementLoad. | 526 // Simulate translation to kick onTranslateElementLoad. |
| 526 // But right now, the call stucks here. | 527 // But right now, the call stucks here. |
| 527 // Once click the text field, it starts again. | 528 // Once click the text field, it starts again. |
| 528 ASSERT_TRUE(ui_test_utils::ExecuteJavaScript( | 529 ASSERT_TRUE(ui_test_utils::ExecuteJavaScript( |
| 529 render_view_host(), L"", | 530 render_view_host(), L"", |
| 530 L"cr.googleTranslate.onTranslateElementLoad();")); | 531 L"cr.googleTranslate.onTranslateElementLoad();")); |
| 531 | 532 |
| 532 // Simulate the render notifying the translation has been done. | 533 // Simulate the render notifying the translation has been done. |
| 533 ui_test_utils::WaitForNotification(chrome::NOTIFICATION_PAGE_TRANSLATED); | 534 ui_test_utils::WaitForNotification(chrome::NOTIFICATION_PAGE_TRANSLATED); |
| 534 | 535 |
| 535 TryBasicFormFill(); | 536 TryBasicFormFill(); |
| 536 } | 537 } |
| OLD | NEW |