summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-25 08:52:47 +0000
committeraa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-25 08:52:47 +0000
commitfa1b5dace74e745d2484012f98559d69825078f5 (patch)
treee25b919f546afd26209ac1a8351362571c2f30bf
parenta84d37604865e6d46dbbcf43af5f974e687f55a9 (diff)
downloadchromium_src-fa1b5dace74e745d2484012f98559d69825078f5.zip
chromium_src-fa1b5dace74e745d2484012f98559d69825078f5.tar.gz
chromium_src-fa1b5dace74e745d2484012f98559d69825078f5.tar.bz2
Revert r24223. Storage test is not working.
TBR=mpcomplete@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24226 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/extensions/extension_storage_apitest.cc9
-rw-r--r--chrome/browser/renderer_host/render_view_host.cc12
-rw-r--r--chrome/browser/tab_contents/render_view_host_delegate_helper.cc8
-rw-r--r--chrome/chrome.gyp1
-rw-r--r--chrome/common/render_messages.h2
-rw-r--r--chrome/renderer/render_thread.cc7
-rwxr-xr-xchrome/test/data/extensions/api_test/storage/api_test.js77
-rw-r--r--chrome/test/data/extensions/api_test/storage/background.html22
-rw-r--r--chrome/test/data/extensions/api_test/storage/manifest.json7
-rw-r--r--chrome/test/data/extensions/api_test/storage/tab.html17
-rw-r--r--webkit/glue/webpreferences.cc3
-rw-r--r--webkit/glue/webpreferences.h2
12 files changed, 15 insertions, 152 deletions
diff --git a/chrome/browser/extensions/extension_storage_apitest.cc b/chrome/browser/extensions/extension_storage_apitest.cc
deleted file mode 100644
index b75cc0e..0000000
--- a/chrome/browser/extensions/extension_storage_apitest.cc
+++ /dev/null
@@ -1,9 +0,0 @@
-// Copyright (c) 2009 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/extensions/extension_apitest.h"
-
-IN_PROC_BROWSER_TEST_F(ExtensionApiTest, Storage) {
- ASSERT_TRUE(RunExtensionTest("storage")) << message_;
-}
diff --git a/chrome/browser/renderer_host/render_view_host.cc b/chrome/browser/renderer_host/render_view_host.cc
index 7206dfc..d028db5 100644
--- a/chrome/browser/renderer_host/render_view_host.cc
+++ b/chrome/browser/renderer_host/render_view_host.cc
@@ -208,20 +208,10 @@ bool RenderViewHost::CreateRenderView() {
modal_dialog_event.event = modal_dialog_event_handle;
#endif
- // Force local storage to be enabled for extensions. This is so that we can
- // enable extensions by default before databases, if necessary.
- // TODO(aa): This should be removed when local storage and databases are
- // enabled by default (bugs 4359 and 4360).
- WebPreferences webkit_prefs = delegate_->GetWebkitPrefs();
- if (delegate_->GetURL().SchemeIs(chrome::kExtensionScheme)) {
- webkit_prefs.local_storage_enabled = true;
- webkit_prefs.databases_enabled = true;
- }
-
Send(new ViewMsg_New(GetNativeViewId(),
modal_dialog_event,
delegate_->GetRendererPrefs(),
- webkit_prefs,
+ delegate_->GetWebkitPrefs(),
routing_id()));
// Set the alternate error page, which is profile specific, in the renderer.
diff --git a/chrome/browser/tab_contents/render_view_host_delegate_helper.cc b/chrome/browser/tab_contents/render_view_host_delegate_helper.cc
index 184fc5e..5146caf 100644
--- a/chrome/browser/tab_contents/render_view_host_delegate_helper.cc
+++ b/chrome/browser/tab_contents/render_view_host_delegate_helper.cc
@@ -179,10 +179,12 @@ WebPreferences RenderViewHostDelegateHelper::GetWebkitPrefs(
web_prefs.application_cache_enabled =
command_line.HasSwitch(switches::kEnableApplicationCache);
+ // NOTE: We imply local storage enabledness for extensions because the
+ // extensions team is beta testing local storage and we like to live on the
+ // edge.
web_prefs.local_storage_enabled =
- command_line.HasSwitch(switches::kEnableLocalStorage);
- web_prefs.databases_enabled =
- command_line.HasSwitch(switches::kEnableDatabases);
+ command_line.HasSwitch(switches::kEnableLocalStorage) ||
+ command_line.HasSwitch(switches::kEnableExtensions);
web_prefs.session_storage_enabled =
command_line.HasSwitch(switches::kEnableSessionStorage);
}
diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp
index 3bfdf95..97b2fed 100644
--- a/chrome/chrome.gyp
+++ b/chrome/chrome.gyp
@@ -53,7 +53,6 @@
'browser/extensions/extension_browsertests_misc.cc',
'browser/extensions/extension_shelf_model_unittest.cc',
'browser/extensions/extension_startup_unittest.cc',
- 'browser/extensions/extension_storage_apitest.cc',
'browser/views/browser_views_accessibility_browsertest.cc',
'browser/views/find_bar_win_browsertest.cc',
# TODO(jam): http://crbug.com/15101 These tests fail on Linux and Mac.
diff --git a/chrome/common/render_messages.h b/chrome/common/render_messages.h
index 32a2e33..aeda43d 100644
--- a/chrome/common/render_messages.h
+++ b/chrome/common/render_messages.h
@@ -1622,7 +1622,6 @@ struct ParamTraits<WebPreferences> {
WriteParam(m, p.remote_fonts_enabled);
WriteParam(m, p.xss_auditor_enabled);
WriteParam(m, p.local_storage_enabled);
- WriteParam(m, p.databases_enabled);
WriteParam(m, p.session_storage_enabled);
WriteParam(m, p.application_cache_enabled);
}
@@ -1657,7 +1656,6 @@ struct ParamTraits<WebPreferences> {
ReadParam(m, iter, &p->remote_fonts_enabled) &&
ReadParam(m, iter, &p->xss_auditor_enabled) &&
ReadParam(m, iter, &p->local_storage_enabled) &&
- ReadParam(m, iter, &p->databases_enabled) &&
ReadParam(m, iter, &p->session_storage_enabled) &&
ReadParam(m, iter, &p->application_cache_enabled);
}
diff --git a/chrome/renderer/render_thread.cc b/chrome/renderer/render_thread.cc
index 4b6c60a..c6e5b17 100644
--- a/chrome/renderer/render_thread.cc
+++ b/chrome/renderer/render_thread.cc
@@ -415,6 +415,13 @@ void RenderThread::EnsureWebKitInitialized() {
if (RenderProcess::current()->initialized_media_library())
WebKit::enableMediaPlayer();
+
+ // Note: We are forcing --enable-databases to on with --enable-extensions so
+ // that extension developers can test databases.
+ if (command_line.HasSwitch(switches::kEnableDatabases) ||
+ command_line.HasSwitch(switches::kEnableExtensions)) {
+ WebKit::enableDatabases();
+ }
}
void RenderThread::OnExtensionMessageInvoke(const std::string& function_name,
diff --git a/chrome/test/data/extensions/api_test/storage/api_test.js b/chrome/test/data/extensions/api_test/storage/api_test.js
deleted file mode 100755
index 985cff3..0000000
--- a/chrome/test/data/extensions/api_test/storage/api_test.js
+++ /dev/null
@@ -1,77 +0,0 @@
-// api_test.js
-// mini-framework for ExtensionApiTest browser tests
-// TODO(erikkay) - figure out a way to share this code across extensions
-
-var completed = false;
-var tests;
-var currentTest;
-
-function complete() {
- completed = true;
-
- // a bit of a hack just to try to get the script to stop running at this point
- throw "completed";
-}
-
-function fail(message) {
- if (completed) throw "completed";
-
- var stack;
- try {
- crash.me += 0; // intentional exception to get the stack trace
- } catch (e) {
- stack = e.stack.split("\n");
- stack = stack.slice(2); // remove title and fail()
- stack = stack.join("\n");
- }
-
- if (!message) {
- message = "FAIL (no message)";
- }
- message += "\n" + stack;
- console.log("[FAIL] " + currentTest.name + ": " + message);
- chrome.test.fail(message);
- complete();
-}
-
-function allTestsSucceeded() {
- console.log("All tests succeeded");
- if (completed) throw "completed";
-
- chrome.test.pass();
- complete();
-}
-
-function runNextTest() {
- currentTest = tests.shift();
- if (!currentTest) {
- allTestsSucceeded();
- return;
- }
- currentTest.call();
-}
-
-function succeed() {
- console.log("[SUCCESS] " + currentTest.name);
- runNextTest();
-}
-
-window.onerror = function(message, url, code) {
- if (completed) return;
-
- fail(message);
-};
-
-function expectTrue(test, message) {
- if (test !== true) {
- if (typeof(test) == "string") {
- if (message) {
- message = test + "\n" + message;
- } else {
- message = test;
- }
- }
- fail(message);
- }
-}
-
diff --git a/chrome/test/data/extensions/api_test/storage/background.html b/chrome/test/data/extensions/api_test/storage/background.html
deleted file mode 100644
index b704b2d..0000000
--- a/chrome/test/data/extensions/api_test/storage/background.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<script>
- // store some stuff in local storage
- localStorage.foo = "bar";
-
- // store some stuff in a database
- var db = window.openDatabase("mydb2", "1.0", "database test");
- db.transaction(function(tx) {
- tx.executeSql("drop table if exists note");
- tx.executeSql("create table note (body text)", []);
- tx.executeSql("insert into note values ('hotdog')", []);
- }, function(error) {
- fail(error.message);
- });
-
- // Open a tab. This doesn't really prove we're writing to disk, but it is
- // difficult to prove that without shutting down the process. We'll just
- // trust that if this next trick works, that the real testing for local
- // storage is good enough to catch more subtle errors.
- chrome.tabs.create({
- url: "tab.html"
- });
-</script>
diff --git a/chrome/test/data/extensions/api_test/storage/manifest.json b/chrome/test/data/extensions/api_test/storage/manifest.json
deleted file mode 100644
index 0e167e4..0000000
--- a/chrome/test/data/extensions/api_test/storage/manifest.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "name": "chrome.storage",
- "version": "0.1",
- "description": "sanity test that storage is always enabled for extensions",
- "background_page": "background.html",
- "permissions": ["tabs"]
-}
diff --git a/chrome/test/data/extensions/api_test/storage/tab.html b/chrome/test/data/extensions/api_test/storage/tab.html
deleted file mode 100644
index b52fdc3..0000000
--- a/chrome/test/data/extensions/api_test/storage/tab.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<script src="api_test.js"></script>
-<script>
- // Check that the localstorage stuff we stored is still there.
- expectTrue(localStorage.foo == "bar");
-
- // Check that the database stuff we stored is still there.
- var db = window.openDatabase("mydb2", "1.0", "database test", 2048);
- db.transaction(function(tx) {
- tx.executeSql("select body from note", [], function(tx, results) {
- expectTrue(results.rows.length == 1);
- expectTrue(results.rows.item(0).body == "hotdog");
- allTestsSucceeded();
- });
- }, function(error) {
- fail(error.message);
- });
-</script>
diff --git a/webkit/glue/webpreferences.cc b/webkit/glue/webpreferences.cc
index 785bdbf..e14788e 100644
--- a/webkit/glue/webpreferences.cc
+++ b/webkit/glue/webpreferences.cc
@@ -48,7 +48,6 @@ void WebPreferences::Apply(WebView* web_view) const {
settings->setDownloadableBinaryFontsEnabled(remote_fonts_enabled);
settings->setXSSAuditorEnabled(xss_auditor_enabled);
settings->setLocalStorageEnabled(local_storage_enabled);
- settings->setDatabasesEnabled(WebKit::databasesEnabled() || databases_enabled);
settings->setSessionStorageEnabled(session_storage_enabled);
settings->setOfflineWebApplicationCacheEnabled(application_cache_enabled);
@@ -64,6 +63,8 @@ void WebPreferences::Apply(WebView* web_view) const {
// Turn this on to cause WebCore to paint the resize corner for us.
settings->setShouldPaintCustomScrollbars(true);
+ settings->setDatabasesEnabled(WebKit::databasesEnabled());
+
// Mitigate attacks from local HTML files by not granting file:// URLs
// universal access.
settings->setAllowUniversalAccessFromFileURLs(false);
diff --git a/webkit/glue/webpreferences.h b/webkit/glue/webpreferences.h
index f0ab0bb..c48339fa 100644
--- a/webkit/glue/webpreferences.h
+++ b/webkit/glue/webpreferences.h
@@ -45,7 +45,6 @@ struct WebPreferences {
bool remote_fonts_enabled;
bool xss_auditor_enabled;
bool local_storage_enabled;
- bool databases_enabled;
bool session_storage_enabled;
bool application_cache_enabled;
@@ -86,7 +85,6 @@ struct WebPreferences {
remote_fonts_enabled(false),
xss_auditor_enabled(false),
local_storage_enabled(false),
- databases_enabled(false),
session_storage_enabled(false),
application_cache_enabled(false),
user_style_sheet_enabled(false) {