OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 var tests = [ | 5 var messages = ['hey', 100, 25.0]; |
6 function testPostMessage() { | 6 var messagesSent = 0; |
7 var messages = ['hey', 100, 25.0]; | 7 var messagesReceived = 0; |
8 var messages_sent = 0; | |
9 var messages_received = 0; | |
10 | 8 |
11 window.addEventListener('message', function(event) { | 9 window.addEventListener('message', function(event) { |
12 if (event.data == messages[messages_received]) | 10 if (event.data == messages[messagesReceived]) { |
13 messages_received++; | 11 messagesReceived++; |
14 else | 12 if (messagesReceived == messages.length) |
15 chrome.test.fail(); | 13 // Instruct the extension to call chrome.test.succeed(). |
| 14 plugin.postMessage('succeed'); |
| 15 } else { |
| 16 // Instruct the extension to call chrome.test.fail(). |
| 17 plugin.postMessage('fail'); |
| 18 } |
| 19 }, false); |
16 | 20 |
17 if (messages_received == messages.length) | 21 var plugin = document.getElementById('plugin'); |
18 chrome.test.succeed(); | 22 function postNextMessage() { |
19 }, false); | 23 plugin.postMessage(messages[messagesSent]); |
20 | 24 messagesSent++; |
21 var plugin = document.getElementById('plugin'); | 25 if (messagesSent < messages.length) |
22 function postNextMessage() { | 26 setTimeout(postNextMessage, 0); |
23 plugin.postMessage(messages[messages_sent]); | 27 } |
24 messages_sent++; | 28 postNextMessage(); |
25 if (messages_sent < messages.length) | |
26 setTimeout(postNextMessage, 0); | |
27 } | |
28 postNextMessage(); | |
29 }, | |
30 ]; | |
31 | |
32 chrome.test.runTests(tests); | |
OLD | NEW |