summaryrefslogtreecommitdiffstats
path: root/chrome/browser/sessions
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-23 16:54:21 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-23 16:54:21 +0000
commit84845656bf7cfd06e2687173ede088823f4f531f (patch)
tree4c05c49044b4757841fab46ce7abbba8a8f2a4e0 /chrome/browser/sessions
parentfd12b1a8cb25b6137c8da6e9230abead547f427a (diff)
downloadchromium_src-84845656bf7cfd06e2687173ede088823f4f531f.zip
chromium_src-84845656bf7cfd06e2687173ede088823f4f531f.tar.gz
chromium_src-84845656bf7cfd06e2687173ede088823f4f531f.tar.bz2
Fixes crash in TabRestoreServiceTest.DontPersistPostData. The problem
is this tests ends up going into webkit (by way of webkit_glue::RemoveFormDataFromHistoryState), and wasn't initializing webkit. The exact crash was because WebCore::generateSequenceNumber asks for the current time, which needs a WebKitClient set. BUG=45977 TEST=none Review URL: http://codereview.chromium.org/3010025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53482 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/sessions')
-rw-r--r--chrome/browser/sessions/tab_restore_service_unittest.cc15
1 files changed, 7 insertions, 8 deletions
diff --git a/chrome/browser/sessions/tab_restore_service_unittest.cc b/chrome/browser/sessions/tab_restore_service_unittest.cc
index 742a1c6..7abe43c 100644
--- a/chrome/browser/sessions/tab_restore_service_unittest.cc
+++ b/chrome/browser/sessions/tab_restore_service_unittest.cc
@@ -8,8 +8,10 @@
#include "chrome/browser/sessions/session_service.h"
#include "chrome/browser/sessions/tab_restore_service.h"
#include "chrome/browser/tab_contents/navigation_entry.h"
+#include "chrome/test/render_view_test.h"
#include "chrome/test/testing_profile.h"
#include "testing/gtest/include/gtest/gtest.h"
+#include "third_party/WebKit/WebKit/chromium/public/WebKit.h"
// Create subclass that overrides TimeNow so that we can control the time used
// for closed tabs and windows.
@@ -44,11 +46,14 @@ class TabRestoreServiceTest : public RenderViewHostTestHarness {
RenderViewHostTestHarness::SetUp();
time_factory_ = new TabRestoreTimeFactory();
service_ = new TabRestoreService(profile(), time_factory_);
+ WebKit::initialize(&webkitclient_);
}
+
virtual void TearDown() {
service_ = NULL;
delete time_factory_;
RenderViewHostTestHarness::TearDown();
+ WebKit::shutdown();
}
void AddThreeNavigations() {
@@ -111,6 +116,7 @@ class TabRestoreServiceTest : public RenderViewHostTestHarness {
GURL url3_;
scoped_refptr<TabRestoreService> service_;
TabRestoreTimeFactory* time_factory_;
+ RenderViewTest::RendererWebKitClientImplNoSandbox webkitclient_;
};
TEST_F(TabRestoreServiceTest, Basic) {
@@ -230,15 +236,8 @@ TEST_F(TabRestoreServiceTest, RestorePinnedAndApp) {
EXPECT_TRUE(extension_app_id == tab->extension_app_id);
}
-// Crashes, http://crbug.com/45977.
-#if defined(OS_WIN)
-#define MAYBE_DontPersistPostData DISABLED_DontPersistPostData
-#else
-#define MAYBE_DontPersistPostData DontPersistPostData
-#endif // defined(OS_WIN)
-
// Make sure we persist entries to disk that have post data.
-TEST_F(TabRestoreServiceTest, MAYBE_DontPersistPostData) {
+TEST_F(TabRestoreServiceTest, DontPersistPostData) {
AddThreeNavigations();
controller().GetEntryAtIndex(0)->set_has_post_data(true);
controller().GetEntryAtIndex(1)->set_has_post_data(true);