- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / test / data / extensions / platform_apps / web_view / common / cleardata / bootstrap.js
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 config.IS_CHROME_TEST = true;
6 // Guest served from TestServer.
7 config.IS_JS_ONLY_GUEST = false;
8 config.TEST_DIR = 'cleardata';
9
10 var clearDataTests = {};
11
12 // step1. Ask guest to load some cookie.
13 // step2. Guest responds saying it has added cookies.
14 // embedder clears cookie data of the guest via clearData API.
15 // step3. Ask guest for cookies that were set in step1.
16 // step4. Guest responds with cookie values, embedder verifies they are unset.
17
18 var run = function() {
19   var container = document.createElement('div');
20   container.id = 'webview-tag-container';
21   document.body.appendChild(container);
22
23   chrome.test.getConfig(function(chromeConfig) {
24     window.console.log('getConfig: ' + chromeConfig);
25     utils.setUp(chromeConfig, config);
26     embedder.loadGuest(function() {
27       chrome.test.runTests([
28         clearDataTests.testCookies
29       ]);
30     }, function(data) {
31       var handled = true;
32       switch (data[0]) {
33         case 'step2.cookies-added':
34           window.console.log('embedder, on message: ' + data[0]);
35           var onDataCleared = function() {
36             window.console.log('embedder.onDataCleared');
37             embedder.webview.contentWindow.postMessage(
38                 JSON.stringify(['step3.get-cookies', 'foo', 'bar']), '*');
39           };
40           embedder.webview.clearData(
41               {'since': 1}, {'cookies': true}, onDataCleared);
42           break;
43         case 'step4.got-cookies':
44           window.console.log('embedder, on message: ' + data[0]);
45           var cookies = data[1];
46           chrome.test.assertEq([null, null], cookies);
47           chrome.test.succeed();
48           break;
49         default:
50           handled = false;
51           break;
52       }
53       return handled;
54     });
55   });
56 };
57
58 // Tests.
59 clearDataTests.testCookies = function testCookies() {
60   window.console.log('clearDataTests.testCookies');
61   embedder.webview.contentWindow.postMessage(
62       JSON.stringify(['step1.add-cookies']), '*');
63 };
64
65 // Run test(s).
66 run();