summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/chrome_tests.gypi6
-rw-r--r--chrome/renderer/form_autocomplete_browsertest.cc (renamed from chrome/renderer/form_autocomplete_unittest.cc)0
-rw-r--r--chrome/test/render_view_test.cc3
-rw-r--r--chrome/test/render_view_test.h11
-rw-r--r--chrome/test/unit/chrome_test_suite.h36
-rw-r--r--chrome/test/unit/run_all_unittests.cc4
6 files changed, 21 insertions, 39 deletions
diff --git a/chrome/chrome_tests.gypi b/chrome/chrome_tests.gypi
index 912667b..08c76f9 100644
--- a/chrome/chrome_tests.gypi
+++ b/chrome/chrome_tests.gypi
@@ -1039,7 +1039,6 @@
'renderer/audio_message_filter_unittest.cc',
'renderer/extensions/extension_api_json_validity_unittest.cc',
'renderer/extensions/json_schema_unittest.cc',
- 'renderer/form_autocomplete_unittest.cc',
'renderer/form_manager_unittest.cc',
'renderer/media/audio_renderer_impl_unittest.cc',
'renderer/net/render_dns_master_unittest.cc',
@@ -1411,7 +1410,10 @@
'browser/sessions/session_restore_browsertest.cc',
'browser/ssl/ssl_browser_tests.cc',
'browser/task_manager_browsertest.cc',
- 'test/automation/dom_automation_browsertest.cc'
+ 'renderer/form_autocomplete_browsertest.cc',
+ 'test/automation/dom_automation_browsertest.cc',
+ 'test/render_view_test.cc',
+ 'test/render_view_test.h',
],
'conditions': [
['chromeos==0', {
diff --git a/chrome/renderer/form_autocomplete_unittest.cc b/chrome/renderer/form_autocomplete_browsertest.cc
index 5f0d8ab..5f0d8ab 100644
--- a/chrome/renderer/form_autocomplete_unittest.cc
+++ b/chrome/renderer/form_autocomplete_browsertest.cc
diff --git a/chrome/test/render_view_test.cc b/chrome/test/render_view_test.cc
index 92d675c..7503230 100644
--- a/chrome/test/render_view_test.cc
+++ b/chrome/test/render_view_test.cc
@@ -81,6 +81,7 @@ void RenderViewTest::SetUp() {
// Setting flags and really doing anything with WebKit is fairly fragile and
// hacky, but this is the world we live in...
webkit_glue::SetJavaScriptFlags(L" --expose-gc");
+ WebKit::initialize(&webkitclient_);
WebScriptController::registerExtension(BaseJsV8Extension::Get());
WebScriptController::registerExtension(JsonSchemaJsV8Extension::Get());
WebScriptController::registerExtension(EventBindings::Get());
@@ -139,6 +140,8 @@ void RenderViewTest::TearDown() {
// (http://crbug.com/21508).
msg_loop_.RunAllPending();
+ WebKit::shutdown();
+
mock_keyboard_.reset();
platform_->PlatformUninitialize();
diff --git a/chrome/test/render_view_test.h b/chrome/test/render_view_test.h
index 3cb3354..af6059e 100644
--- a/chrome/test/render_view_test.h
+++ b/chrome/test/render_view_test.h
@@ -16,6 +16,7 @@
#include "chrome/renderer/mock_render_thread.h"
#include "chrome/renderer/render_view.h"
#include "chrome/renderer/renderer_main_platform_delegate.h"
+#include "chrome/renderer/renderer_webkitclient_impl.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/WebKit/WebKit/chromium/public/WebFrame.h"
@@ -61,10 +62,20 @@ class RenderViewTest : public testing::Test {
virtual void TearDown();
+ // A special WebKitClientImpl class for getting rid off the dependency to the
+ // sandbox, which is not available in RenderViewTest.
+ class RendererWebKitClientImplNoSandbox : public RendererWebKitClientImpl {
+ public:
+ virtual WebKit::WebSandboxSupport* sandboxSupport() {
+ return NULL;
+ }
+ };
+
MessageLoop msg_loop_;
MockRenderThread render_thread_;
scoped_ptr<MockRenderProcess> mock_process_;
scoped_refptr<RenderView> view_;
+ RendererWebKitClientImplNoSandbox webkitclient_;
scoped_ptr<MockKeyboard> mock_keyboard_;
// Used to setup the process so renderers can run.
diff --git a/chrome/test/unit/chrome_test_suite.h b/chrome/test/unit/chrome_test_suite.h
index 375e0a7..9defe5b 100644
--- a/chrome/test/unit/chrome_test_suite.h
+++ b/chrome/test/unit/chrome_test_suite.h
@@ -11,12 +11,11 @@
#include "app/app_paths.h"
#include "app/resource_bundle.h"
-#include "base/scoped_ptr.h"
+#include "base/stats_table.h"
#include "base/file_util.h"
#include "base/path_service.h"
#include "base/ref_counted.h"
#include "base/scoped_nsautorelease_pool.h"
-#include "base/stats_table.h"
#include "base/test/test_suite.h"
#include "base/utf_string_conversions.h"
#include "chrome/app/scoped_ole_initializer.h"
@@ -25,11 +24,9 @@
#include "chrome/common/chrome_paths.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/url_constants.h"
-#include "chrome/renderer/renderer_webkitclient_impl.h"
#include "chrome/test/testing_browser_process.h"
#include "net/base/mock_host_resolver.h"
#include "net/base/net_util.h"
-#include "third_party/WebKit/WebKit/chromium/public/WebKit.h"
#if defined(OS_MACOSX)
#include "base/mac_util.h"
@@ -91,15 +88,8 @@ class ChromeTestSuite : public TestSuite {
created_user_data_dir_(false) {
}
- // WebKit must be enabled before calling Run().
- void SetWebKitEnabled(bool val) {
- webkit_client_.reset(val ? new NoSandboxWebKitClient() : NULL);
- }
- bool IsWebKitEnabled() const {
- return webkit_client_.get();
- }
-
protected:
+
virtual void Initialize() {
base::ScopedNSAutoreleasePool autorelease_pool;
@@ -154,15 +144,9 @@ class ChromeTestSuite : public TestSuite {
RemoveSharedMemoryFile(stats_filename_);
stats_table_ = new StatsTable(stats_filename_, 20, 200);
StatsTable::set_current(stats_table_);
-
- if (webkit_client_.get())
- WebKit::initialize(webkit_client_.get());
}
virtual void Shutdown() {
- if (webkit_client_.get())
- WebKit::shutdown();
-
ResourceBundle::CleanupSharedInstance();
#if defined(OS_MACOSX)
@@ -208,22 +192,6 @@ class ChromeTestSuite : public TestSuite {
// Flag indicating whether user_data_dir was automatically created or not.
bool created_user_data_dir_;
-
- private:
- // A special WebKitClientImpl class for getting rid of the dependency to the
- // sandbox, which is not available in the unit test environment.
- class NoSandboxWebKitClient : public RendererWebKitClientImpl {
- public:
- virtual WebKit::WebSandboxSupport* sandboxSupport() {
- return NULL;
- }
- };
-
- scoped_ptr<NoSandboxWebKitClient> webkit_client_;
-
- // True if this test suite uses webkit. Used to initialize webkit before
- // running tests.
- bool uses_webkit_;
};
#endif // CHROME_TEST_UNIT_CHROME_TEST_SUITE_H_
diff --git a/chrome/test/unit/run_all_unittests.cc b/chrome/test/unit/run_all_unittests.cc
index 7dd82b7..5534dbe 100644
--- a/chrome/test/unit/run_all_unittests.cc
+++ b/chrome/test/unit/run_all_unittests.cc
@@ -5,7 +5,5 @@
#include "chrome/test/unit/chrome_test_suite.h"
int main(int argc, char **argv) {
- ChromeTestSuite suite(argc, argv);
- suite.SetWebKitEnabled(true);
- return suite.Run();
+ return ChromeTestSuite(argc, argv).Run();
}