15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2011 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#include "content/public/test/content_browser_test.h" 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 7868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "base/command_line.h" 8868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "base/strings/utf_string_conversions.h" 9868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "content/public/common/content_switches.h" 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/public/test/browser_test_utils.h" 11effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#include "content/public/test/content_browser_test_utils.h" 123551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "content/shell/browser/shell.h" 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "testing/gtest/include/gtest/gtest.h" 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace content { 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 17f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(ContentBrowserTest, MANUAL_ShouldntRun) { 18f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) // Ensures that tests with MANUAL_ prefix don't run automatically. 19f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) ASSERT_TRUE(false); 20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)} 21f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 22868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)class ContentBrowserTestSanityTest : public ContentBrowserTest { 23868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) public: 24868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { 25868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) const testing::TestInfo* const test_info = 26868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) testing::UnitTest::GetInstance()->current_test_info(); 27868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) if (std::string(test_info->name()) == "SingleProcess") 28868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) command_line->AppendSwitch(switches::kSingleProcess); 29868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) } 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 31868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) void Test() { 32868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) GURL url = GetTestUrl(".", "simple_page.html"); 33868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::string16 expected_title(base::ASCIIToUTF16("OK")); 35868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) TitleWatcher title_watcher(shell()->web_contents(), expected_title); 36868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) NavigateToURL(shell(), url); 37a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::string16 title = title_watcher.WaitAndGetTitle(); 38868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) EXPECT_EQ(expected_title, title); 39868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) } 40868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)}; 41868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 42868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(ContentBrowserTestSanityTest, Basic) { 43868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) Test(); 44868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)} 45868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 465f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(ContentBrowserTestSanityTest, SingleProcess) { 47868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) Test(); 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace content 51