OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2014 the V8 project 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 // Flags: --expose-debug-as debug | |
6 | |
7 Debug = debug.Debug; | |
8 | |
9 var base_id = -1; | |
10 var exception = null; | |
11 var expected = [ | |
12 "enqueue #1", | |
13 "willHandle #1", | |
14 "didHandle #1", | |
15 ]; | |
16 | |
17 function assertLog(msg) | |
18 { | |
Yang
2014/07/03 14:19:44
move this bracket to the previous line please.
| |
19 print(msg); | |
20 assertTrue(expected.length > 0); | |
21 assertEquals(expected.shift(), msg); | |
22 if (!expected.length) { | |
23 Debug.setListener(null); | |
24 } | |
25 } | |
26 | |
27 function listener(event, exec_state, event_data, data) { | |
28 if (event != Debug.DebugEvent.AsyncTaskEvent) return; | |
29 try { | |
30 if (base_id < 0) | |
31 base_id = event_data.id(); | |
32 var id = event_data.id() - base_id + 1; | |
33 assertEquals("Object.observe", event_data.name()); | |
34 assertLog(event_data.type() + " #" + id); | |
35 } catch (e) { | |
36 print(e + e.stack) | |
37 exception = e; | |
38 } | |
39 } | |
40 | |
41 Debug.setListener(listener); | |
42 | |
43 var obj = {}; | |
44 Object.observe(obj, function(changes) { | |
45 print(change.type + " " + change.name + " " + change.oldValue); | |
46 }); | |
47 | |
48 obj.foo = 1; | |
49 obj.zoo = 2; | |
50 obj.foo = 3; | |
51 | |
52 assertNull(exception); | |
OLD | NEW |