Home | History | Annotate | Download | only in browser
      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
      3 // found in the LICENSE file.
      4 
      5 #include "base/basictypes.h"
      6 #include "base/file_path.h"
      7 #include "build/build_config.h"
      8 #include "chrome/test/automation/tab_proxy.h"
      9 #include "chrome/test/ui/ui_test.h"
     10 #include "net/base/net_util.h"
     11 
     12 class DefaultPluginUITest : public UITest {
     13  public:
     14   DefaultPluginUITest() {
     15     dom_automation_enabled_ = true;
     16   }
     17 };
     18 
     19 #if defined(OS_WIN)
     20 #define MAYBE_DefaultPluginLoadTest DISABLED_DefaultPluginLoadTest
     21 #else
     22 #define MAYBE_DefaultPluginLoadTest DefaultPluginLoadTest
     23 #endif
     24 TEST_F(DefaultPluginUITest, MAYBE_DefaultPluginLoadTest) {
     25   // Open page with default plugin.
     26   FilePath test_file(test_data_directory_);
     27   test_file = test_file.AppendASCII("default_plugin.html");
     28   NavigateToURL(net::FilePathToFileURL(test_file));
     29 
     30   // Check that the default plugin was loaded. It executes a bit of javascript
     31   // in the HTML file which replaces the innerHTML of div |result| with "DONE".
     32   scoped_refptr<TabProxy> tab(GetActiveTab());
     33   std::wstring out;
     34   ASSERT_TRUE(tab->ExecuteAndExtractString(L"",
     35       L"domAutomationController.send("
     36       L"document.getElementById('result').innerHTML)", &out));
     37   ASSERT_EQ(L"DONE", out);
     38 }
     39