Index: chrome/test/data/extensions/api_test/storage/background.js |
=================================================================== |
--- chrome/test/data/extensions/api_test/storage/background.js (revision 0) |
+++ chrome/test/data/extensions/api_test/storage/background.js (revision 0) |
@@ -0,0 +1,42 @@ |
+// Copyright (c) 2011 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. |
+ |
+// store some stuff in local storage |
+localStorage.foo = "bar"; |
+ |
+console.log("Opening database..."); |
+// store some stuff in a database |
+var db = window.openDatabase("mydb2", "1.0", "database test", 2048); |
+if (!db) |
+ chrome.test.notifyFail("failed to open database"); |
+ |
+console.log("Performing transaction..."); |
+db.transaction(function(tx) { |
+ tx.executeSql("drop table if exists note", [], onDropSuccess, onSqlError); |
+ tx.executeSql("create table note (body text)", [], onCreateSuccess, onSqlError); |
+ tx.executeSql("insert into note values ('hotdog')", [], onSqlExecuted, |
+ onSqlError); |
+}, function(error) { |
+ chrome.test.notifyFail(error.message); |
+}); |
+ |
+function onDropSuccess(tx, res) { |
+ console.log("note table dropped"); |
+} |
+function onCreateSuccess(tx, res) { |
+ console.log("note table created"); |
+} |
+function onSqlError(tx, error) { |
+ chrome.test.notifyFail(error.message); |
+} |
+function onSqlExecuted() { |
+ console.log("Opening tab..."); |
+ // 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" |
+ }); |
+} |