- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / test / data / extensions / platform_apps / web_view / common / console_messages / 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 // No TestServer.
7 config.IS_JS_ONLY_GUEST = true;
8 config.TEST_DIR = 'console_messages';
9
10 var consoleTests = {};
11
12 var run = function() {
13   var container = document.createElement('div');
14   container.id = 'webview-tag-container';
15   document.body.appendChild(container);
16
17   chrome.test.getConfig(function(chromeConfig) {
18     window.console.log('getConfig: ' + chromeConfig);
19     utils.setUp(chromeConfig, config);
20     embedder.loadGuest(function() {
21       chrome.test.runTests([
22         consoleTests.testLogInfo,
23         consoleTests.testLogWarn,
24         consoleTests.testLogError,
25         consoleTests.testLogDebug,
26         consoleTests.testThrow
27       ]);
28     }, function(data) { return /* handled */ false; });
29   });
30 };
31
32 consoleTests.testLogHelper_ = function(
33     id, expectedLogLevel, expectedLogMessage) {
34   var called = false;
35   var logCallback = function(e) {
36     embedder.webview.removeEventListener('consolemessage', logCallback);
37     chrome.test.assertEq(expectedLogLevel, e.level);
38     chrome.test.assertEq(expectedLogMessage, e.message);
39     chrome.test.succeed();
40   };
41   embedder.webview.addEventListener('consolemessage', logCallback);
42   embedder.webview.contentWindow.postMessage(JSON.stringify([id]), '*');
43 };
44
45 // Tests.
46 consoleTests.testLogInfo = function testLogInfo() {
47   consoleTests.testLogHelper_('test-1', 0, 'log-one');
48 };
49
50 consoleTests.testLogWarn = function testLogWarn() {
51   consoleTests.testLogHelper_('test-2', 1, 'log-two');
52 }
53
54 consoleTests.testLogError = function testLogError() {
55   consoleTests.testLogHelper_('test-3', 2, 'log-three');
56 };
57
58 consoleTests.testLogDebug = function testLogDebug() {
59   consoleTests.testLogHelper_('test-4', -1, 'log-four');
60 };
61
62 consoleTests.testThrow = function testThrow() {
63   consoleTests.testLogHelper_('test-throw', 2, 'Uncaught Error: log-five');
64 };
65
66 // Run test(s).
67 run();