diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /dom/indexedDB/test/browser_forgetThisSite.js | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'dom/indexedDB/test/browser_forgetThisSite.js')
-rw-r--r-- | dom/indexedDB/test/browser_forgetThisSite.js | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/dom/indexedDB/test/browser_forgetThisSite.js b/dom/indexedDB/test/browser_forgetThisSite.js new file mode 100644 index 000000000..c1177908f --- /dev/null +++ b/dom/indexedDB/test/browser_forgetThisSite.js @@ -0,0 +1,109 @@ +/** + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ + */ + +Components.utils.import("resource://gre/modules/ForgetAboutSite.jsm"); + +const domains = [ + "mochi.test:8888", + "www.example.com" +]; + +const addPath = "/browser/dom/indexedDB/test/browser_forgetThisSiteAdd.html"; +const getPath = "/browser/dom/indexedDB/test/browser_forgetThisSiteGet.html"; + +const testPageURL1 = "http://" + domains[0] + addPath; +const testPageURL2 = "http://" + domains[1] + addPath; +const testPageURL3 = "http://" + domains[0] + getPath; +const testPageURL4 = "http://" + domains[1] + getPath; + +function test() +{ + requestLongerTimeout(2); + waitForExplicitFinish(); + // Avoids the prompt + setPermission(testPageURL1, "indexedDB"); + setPermission(testPageURL2, "indexedDB"); + executeSoon(test1); +} + +function test1() +{ + // Set database version for domain 1 + gBrowser.selectedTab = gBrowser.addTab(); + gBrowser.selectedBrowser.addEventListener("load", function () { + gBrowser.selectedBrowser.removeEventListener("load", arguments.callee, true); + + setFinishedCallback(function(result, exception) { + ok(result == 11, "Set version on database in " + testPageURL1); + ok(!exception, "No exception"); + gBrowser.removeCurrentTab(); + + executeSoon(test2); + }); + }, true); + content.location = testPageURL1; +} + +function test2() +{ + // Set database version for domain 2 + gBrowser.selectedTab = gBrowser.addTab(); + gBrowser.selectedBrowser.addEventListener("load", function () { + gBrowser.selectedBrowser.removeEventListener("load", arguments.callee, true); + + setFinishedCallback(function(result, exception) { + ok(result == 11, "Set version on database in " + testPageURL2); + ok(!exception, "No exception"); + gBrowser.removeCurrentTab(); + + executeSoon(test3); + }); + }, true); + content.location = testPageURL2; +} + +function test3() +{ + // Remove database from domain 2 + ForgetAboutSite.removeDataFromDomain(domains[1]); + setPermission(testPageURL4, "indexedDB"); + executeSoon(test4); +} + +function test4() +{ + // Get database version for domain 1 + gBrowser.selectedTab = gBrowser.addTab(); + gBrowser.selectedBrowser.addEventListener("load", function () { + gBrowser.selectedBrowser.removeEventListener("load", arguments.callee, true); + + setFinishedCallback(function(result, exception) { + ok(result == 11, "Got correct version on database in " + testPageURL3); + ok(!exception, "No exception"); + gBrowser.removeCurrentTab(); + + executeSoon(test5); + }); + }, true); + content.location = testPageURL3; +} + +function test5() +{ + // Get database version for domain 2 + gBrowser.selectedTab = gBrowser.addTab(); + gBrowser.selectedBrowser.addEventListener("load", function () { + gBrowser.selectedBrowser.removeEventListener("load", arguments.callee, true); + + setFinishedCallback(function(result, exception) { + ok(result == 1, "Got correct version on database in " + testPageURL4); + ok(!exception, "No exception"); + gBrowser.removeCurrentTab(); + + executeSoon(finish); + }); + }, true); + content.location = testPageURL4; +} |