Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(198)

Side by Side Diff: chrome/renderer/translate_helper_browsertest.cc

Issue 6874038: Remove the last Chrome dependencies from renderer, and enforce no more includes through DEPS. I ... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/common/chrome_constants.h" 5 #include "chrome/common/chrome_constants.h"
6 #include "chrome/common/render_messages.h" 6 #include "chrome/common/render_messages.h"
7 #include "chrome/renderer/translate_helper.h" 7 #include "chrome/renderer/translate_helper.h"
8 #include "chrome/test/render_view_test.h" 8 #include "chrome/test/render_view_test.h"
9 #include "testing/gmock/include/gmock/gmock.h" 9 #include "testing/gmock/include/gmock/gmock.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 TranslateErrors::Type error; 286 TranslateErrors::Type error;
287 ASSERT_TRUE(GetPageTranslatedMessage(&page_id, 287 ASSERT_TRUE(GetPageTranslatedMessage(&page_id,
288 &received_original_lang, 288 &received_original_lang,
289 &received_target_lang, 289 &received_target_lang,
290 &error)); 290 &error));
291 EXPECT_EQ(view_->page_id(), page_id); 291 EXPECT_EQ(view_->page_id(), page_id);
292 EXPECT_EQ(original_lang, received_original_lang); 292 EXPECT_EQ(original_lang, received_original_lang);
293 EXPECT_EQ(new_target_lang, received_target_lang); 293 EXPECT_EQ(new_target_lang, received_target_lang);
294 EXPECT_EQ(TranslateErrors::NONE, error); 294 EXPECT_EQ(TranslateErrors::NONE, error);
295 } 295 }
296
297 // Tests that we send the right translatable for a page and that we respect the
298 // "no translate" meta-tag.
299 TEST_F(RenderViewTest, TranslatablePage) {
300 // Suppress the normal delay that occurs when the page is loaded before which
301 // the renderer sends the page contents to the browser.
302 view_->set_send_content_state_immediately(true);
303
304 LoadHTML("<html><body>A random page with random content.</body></html>");
305 ProcessPendingMessages();
306 const IPC::Message* message = render_thread_.sink().GetUniqueMessageMatching(
307 ViewHostMsg_TranslateLanguageDetermined::ID);
308 ASSERT_NE(static_cast<IPC::Message*>(NULL), message);
309 ViewHostMsg_TranslateLanguageDetermined::Param params;
310 ViewHostMsg_TranslateLanguageDetermined::Read(message, &params);
311 EXPECT_TRUE(params.b); // Translatable should be true.
312 render_thread_.sink().ClearMessages();
313
314 // Now the page specifies the META tag to prevent translation.
315 LoadHTML("<html><head><meta name=\"google\" value=\"notranslate\"></head>"
316 "<body>A random page with random content.</body></html>");
317 ProcessPendingMessages();
318 message = render_thread_.sink().GetUniqueMessageMatching(
319 ViewHostMsg_TranslateLanguageDetermined::ID);
320 ASSERT_NE(static_cast<IPC::Message*>(NULL), message);
321 ViewHostMsg_TranslateLanguageDetermined::Read(message, &params);
322 EXPECT_FALSE(params.b); // Translatable should be false.
323 render_thread_.sink().ClearMessages();
324
325 // Try the alternate version of the META tag (content instead of value).
326 LoadHTML("<html><head><meta name=\"google\" content=\"notranslate\"></head>"
327 "<body>A random page with random content.</body></html>");
328 ProcessPendingMessages();
329 message = render_thread_.sink().GetUniqueMessageMatching(
330 ViewHostMsg_TranslateLanguageDetermined::ID);
331 ASSERT_NE(static_cast<IPC::Message*>(NULL), message);
332 ViewHostMsg_TranslateLanguageDetermined::Read(message, &params);
333 EXPECT_FALSE(params.b); // Translatable should be false.
334 }
335
336 // Tests that the language meta tag takes precedence over the CLD when reporting
337 // the page's language.
338 TEST_F(RenderViewTest, LanguageMetaTag) {
339 // Suppress the normal delay that occurs when the page is loaded before which
340 // the renderer sends the page contents to the browser.
341 view_->set_send_content_state_immediately(true);
342
343 LoadHTML("<html><head><meta http-equiv=\"content-language\" content=\"es\">"
344 "</head><body>A random page with random content.</body></html>");
345 ProcessPendingMessages();
346 const IPC::Message* message = render_thread_.sink().GetUniqueMessageMatching(
347 ViewHostMsg_TranslateLanguageDetermined::ID);
348 ASSERT_NE(static_cast<IPC::Message*>(NULL), message);
349 ViewHostMsg_TranslateLanguageDetermined::Param params;
350 ViewHostMsg_TranslateLanguageDetermined::Read(message, &params);
351 EXPECT_EQ("es", params.a);
352 render_thread_.sink().ClearMessages();
353
354 // Makes sure we support multiple languages specified.
355 LoadHTML("<html><head><meta http-equiv=\"content-language\" "
356 "content=\" fr , es,en \">"
357 "</head><body>A random page with random content.</body></html>");
358 ProcessPendingMessages();
359 message = render_thread_.sink().GetUniqueMessageMatching(
360 ViewHostMsg_TranslateLanguageDetermined::ID);
361 ASSERT_NE(static_cast<IPC::Message*>(NULL), message);
362 ViewHostMsg_TranslateLanguageDetermined::Read(message, &params);
363 EXPECT_EQ("fr", params.a);
364 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698