OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 /** | 5 /** |
6 * A simple unit test library for running tests in a browser. | 6 * A simple unit test library for running tests in a browser. |
7 */ | 7 */ |
8 #library("unittest"); | 8 #library("unittest"); |
9 | 9 |
10 #import("dart:dom"); | 10 #import("dart:dom"); |
(...skipping 13 matching lines...) Expand all Loading... |
24 | 24 |
25 void _onError(e) { | 25 void _onError(e) { |
26 if (_currentTest < _tests.length) { | 26 if (_currentTest < _tests.length) { |
27 final testCase = _tests[_currentTest]; | 27 final testCase = _tests[_currentTest]; |
28 // TODO(vsm): figure out how to expose the stack trace here | 28 // TODO(vsm): figure out how to expose the stack trace here |
29 // Currently e.message works in dartium, but not in dartc. | 29 // Currently e.message works in dartium, but not in dartc. |
30 testCase.error('(DOM callback has errors) Caught ${e}', ''); | 30 testCase.error('(DOM callback has errors) Caught ${e}', ''); |
31 _state = _UNCAUGHT_ERROR; | 31 _state = _UNCAUGHT_ERROR; |
32 if (testCase.callbacks > 0) { | 32 if (testCase.callbacks > 0) { |
33 _currentTest++; | 33 _currentTest++; |
34 _nextBatch(); | 34 _testRunner(); |
35 } | 35 } |
36 } | 36 } |
37 } | 37 } |
38 | 38 |
39 /** Runs all queued tests, one at a time. */ | 39 /** Runs all queued tests, one at a time. */ |
40 _platformStartTests() { | 40 _platformStartTests() { |
41 window.postMessage('unittest-suite-wait-for-done', '*'); | 41 window.postMessage('unittest-suite-wait-for-done', '*'); |
42 | 42 |
43 // Listen for uncaught errors. | 43 // Listen for uncaught errors. |
44 window.addEventListener('error', _onErrorClosure, true); | 44 window.addEventListener('error', _onErrorClosure, true); |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
95 <td>Expectation: ${test.description}. ${test.message}</td> | 95 <td>Expectation: ${test.description}. ${test.message}</td> |
96 </tr>'''; | 96 </tr>'''; |
97 | 97 |
98 if (test.stackTrace != null) { | 98 if (test.stackTrace != null) { |
99 html += | 99 html += |
100 '<tr><td></td><td colspan="2"><pre>${test.stackTrace}</pre></td></tr>'; | 100 '<tr><td></td><td colspan="2"><pre>${test.stackTrace}</pre></td></tr>'; |
101 } | 101 } |
102 | 102 |
103 return html; | 103 return html; |
104 } | 104 } |
OLD | NEW |