| <html> |
| <head> |
| <script src="../../http/tests/inspector/inspector-test.js"></script> |
| <script src="../../http/tests/inspector/console-test.js"></script> |
| <script> |
| |
| var globals = []; |
| |
| function log(current) |
| { |
| console.log(globals[current]); |
| console.log([globals[current]]); |
| } |
| |
| function onload() |
| { |
| var p = Promise.reject(-0); |
| p.catch(function() {}); |
| |
| var smb1 = Symbol(); |
| var smb2 = Symbol("a"); |
| var obj = { |
| get getter() {} |
| }; |
| obj["a"] = smb1; |
| obj[smb2] = 2; |
| |
| var map = new Map(); |
| var weakMap = new WeakMap(); |
| map.set(obj, {foo: 1}); |
| weakMap.set(obj, {foo: 1}); |
| |
| var set = new Set(); |
| var weakSet = new WeakSet(); |
| set.add(obj); |
| weakSet.add(obj); |
| |
| var mapMap0 = new Map(); |
| mapMap0.set(new Map(), new WeakMap()); |
| var mapMap = new Map(); |
| mapMap.set(map, weakMap); |
| |
| var setSet0 = new Set(); |
| setSet0.add(new WeakSet()); |
| var setSet = new Set(); |
| setSet.add(weakSet); |
| |
| var bigmap = new Map(); |
| bigmap.set(" from str ", " to str "); |
| bigmap.set(undefined, undefined); |
| bigmap.set(null, null); |
| bigmap.set(42, 42); |
| bigmap.set({foo:"from"}, {foo:"to"}); |
| bigmap.set(["from"], ["to"]); |
| |
| var genFunction = function *() { |
| yield 1; |
| yield 2; |
| } |
| var generator = genFunction(); |
| |
| globals = [ |
| p, smb1, smb2, obj, map, weakMap, set, weakSet, |
| mapMap0, mapMap, setSet0, setSet, bigmap, generator |
| ]; |
| |
| runTest(); |
| } |
| |
| function test() |
| { |
| InspectorTest.evaluateInPage("globals.length", loopOverGlobals.bind(this, 0)); |
| |
| function loopOverGlobals(current, total) |
| { |
| function advance() |
| { |
| var next = current + 1; |
| if (next == total.description) |
| finish(); |
| else |
| loopOverGlobals(next, total); |
| } |
| |
| function finish() |
| { |
| InspectorTest.dumpConsoleMessages(false, false, InspectorTest.textContentWithLineBreaks); |
| InspectorTest.addResult("Expanded all messages"); |
| InspectorTest.expandConsoleMessages(dumpConsoleMessages); |
| } |
| |
| function dumpConsoleMessages() |
| { |
| InspectorTest.dumpConsoleMessages(false, false, InspectorTest.textContentWithLineBreaks); |
| InspectorTest.completeTest(); |
| } |
| |
| InspectorTest.evaluateInPage("log(" + current + ")"); |
| InspectorTest.deprecatedRunAfterPendingDispatches(evalInConsole); |
| function evalInConsole() |
| { |
| InspectorTest.evaluateInConsole("globals[" + current + "]"); |
| InspectorTest.deprecatedRunAfterPendingDispatches(advance); |
| } |
| } |
| } |
| </script> |
| </head> |
| |
| <body onload="onload()"> |
| <p> |
| Tests that console properly displays information about ES6 features. |
| </p> |
| </body> |
| </html> |