Changeset 218862 in webkit
- Timestamp:
- Jun 27, 2017 9:23:48 PM (7 years ago)
- Location:
- trunk/LayoutTests
- Files:
-
- 2 added
- 1 deleted
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r218861 r218862 1 2017-06-27 Joseph Pecoraro <pecoraro@apple.com> 2 3 Web Inspector: Cleanup RemoteObject tests 4 https://bugs.webkit.org/show_bug.cgi?id=173885 5 6 Reviewed by Matt Baker. 7 8 * inspector/model/remote-object-dom.html: Added. 9 * inspector/model/remote-object-expected.txt: 10 * inspector/model/remote-object.html: 11 Split out DOM results (which differ across ports and features). 12 13 * inspector/model/resources/remote-object-utilities.js: 14 (TestPage.registerInitializer.window.runSteps): 15 This should have been a continue not a return. 16 17 * platform/mac/inspector/model/remote-object-dom-expected.txt: Added. 18 * platform/mac/inspector/model/remote-object-expected.txt: Removed. 19 Platform expectations are now limited to just the DOM test. 20 1 21 2017-06-27 Caio Lima <ticaiolima@gmail.com> 2 22 -
trunk/LayoutTests/inspector/model/remote-object-expected.txt
r218836 r218862 1 CONSOLE MESSAGE: line 1: Unhandled Promise Rejection: undefined 2 CONSOLE MESSAGE: line 1: Unhandled Promise Rejection: result 1 3 2 4 ----------------------------------------------------- … … 25 27 26 28 ----------------------------------------------------- 27 EXPRESSION: Symbol( 'test')29 EXPRESSION: Symbol("test") 28 30 { 29 31 "_type": "symbol", … … 169 171 170 172 ----------------------------------------------------- 171 EXPRESSION: 'string' 173 EXPRESSION: `template` 174 { 175 "_type": "string", 176 "_description": "template", 177 "_value": "template" 178 } 179 180 ----------------------------------------------------- 181 EXPRESSION: "string" 172 182 { 173 183 "_type": "string", … … 177 187 178 188 ----------------------------------------------------- 179 EXPRESSION: 'Unicode…'189 EXPRESSION: "Unicode…" 180 190 { 181 191 "_type": "string", … … 185 195 186 196 ----------------------------------------------------- 187 EXPRESSION: 'I wish I had something to put here.'197 EXPRESSION: "I wish I had something to put here." 188 198 { 189 199 "_type": "string", … … 241 251 242 252 ----------------------------------------------------- 243 EXPRESSION: Object.getOwnPropertyDescriptor({ get getter() { return 1 } }, 'getter').get253 EXPRESSION: Object.getOwnPropertyDescriptor({ get getter() { return 1 } }, "getter").get 244 254 { 245 255 "_type": "function", … … 249 259 250 260 ----------------------------------------------------- 251 EXPRESSION: Object.getOwnPropertyDescriptor({ set setter(v) { console.log(v); } }, 'setter').set261 EXPRESSION: Object.getOwnPropertyDescriptor({ set setter(v) { console.log(v); } }, "setter").set 252 262 { 253 263 "_type": "function", … … 353 363 354 364 ----------------------------------------------------- 355 EXPRESSION: new RegExp( '')365 EXPRESSION: new RegExp("") 356 366 { 357 367 "_type": "object", … … 377 387 378 388 ----------------------------------------------------- 379 EXPRESSION: new RegExp( 'test', 'i')389 EXPRESSION: new RegExp("test", "i") 380 390 { 381 391 "_type": "object", … … 546 556 547 557 ----------------------------------------------------- 548 EXPRESSION: [true, 1, 1.234, 'string', /regex/]558 EXPRESSION: [true, 1, 1.234, "string", /regex/] 549 559 { 550 560 "_type": "object", … … 988 998 989 999 ----------------------------------------------------- 990 EXPRESSION: a = null; (function() { a = arguments; })(1, '2', /3/); a1000 EXPRESSION: a = null; (function() { a = arguments; })(1, "2", /3/); a 991 1001 { 992 1002 "_type": "object", … … 1036 1046 "_subtype": "array", 1037 1047 "_description": "Int32Array", 1038 "_lossless": true,1048 "_lossless": false, 1039 1049 "_overflow": false, 1040 1050 "_size": 4, … … 1148 1158 "_subtype": "array", 1149 1159 "_description": "Int32Array", 1150 "_lossless": true,1160 "_lossless": false, 1151 1161 "_overflow": false, 1152 1162 "_size": 4, … … 1319 1329 1320 1330 ----------------------------------------------------- 1321 EXPRESSION: ({a: 1, b: "string", c: /regex/, d: Symbol( 'sym')})1331 EXPRESSION: ({a: 1, b: "string", c: /regex/, d: Symbol("sym")}) 1322 1332 { 1323 1333 "_type": "object", … … 1427 1437 "_type": "object", 1428 1438 "_description": "Foo", 1429 "_lossless": true,1439 "_lossless": false, 1430 1440 "_overflow": false, 1431 1441 "_properties": [], … … 1443 1453 "_type": "object", 1444 1454 "_description": "Foo2", 1445 "_lossless": true,1455 "_lossless": false, 1446 1456 "_overflow": false, 1447 1457 "_properties": [], … … 1459 1469 "_type": "object", 1460 1470 "_description": "Foo3", 1461 "_lossless": true,1471 "_lossless": false, 1462 1472 "_overflow": false, 1463 1473 "_properties": [], … … 1506 1516 "_type": "object", 1507 1517 "_description": "Bar2", 1508 "_lossless": true,1518 "_lossless": false, 1509 1519 "_overflow": false, 1510 1520 "_properties": [ … … 1520 1530 1521 1531 ----------------------------------------------------- 1522 EXPRESSION: window.loadEvent1523 {1524 "_type": "object",1525 "_objectId": "<filtered>",1526 "_description": "Event",1527 "_preview": {1528 "_type": "object",1529 "_description": "Event",1530 "_lossless": false,1531 "_overflow": true,1532 "_properties": [1533 {1534 "_name": "clipboardData",1535 "_type": "undefined",1536 "_value": "undefined"1537 },1538 {1539 "_name": "type",1540 "_type": "string",1541 "_value": "load"1542 },1543 {1544 "_name": "target",1545 "_type": "object",1546 "_subtype": "node",1547 "_value": "#document"1548 },1549 {1550 "_name": "currentTarget",1551 "_type": "object",1552 "_value": "Window"1553 },1554 {1555 "_name": "eventPhase",1556 "_type": "number",1557 "_value": "2"1558 }1559 ],1560 "_entries": null1561 }1562 }1563 1564 -----------------------------------------------------1565 1532 EXPRESSION: new ArrayBuffer(16) 1566 1533 { … … 1571 1538 "_type": "object", 1572 1539 "_description": "ArrayBuffer", 1573 "_lossless": true,1540 "_lossless": false, 1574 1541 "_overflow": false, 1575 1542 "_properties": [ … … 1617 1584 1618 1585 ----------------------------------------------------- 1619 EXPRESSION: obj = {}; obj[ 'prop'] = 1; obj[Symbol()] = 2; obj[Symbol('sym')] = 3; obj[Symbol('sym')] = 4; obj[Symbol.iterator] = Symbol(); obj1586 EXPRESSION: obj = {}; obj["prop"] = 1; obj[Symbol()] = 2; obj[Symbol("sym")] = 3; obj[Symbol("sym")] = 4; obj[Symbol.iterator] = Symbol(); obj 1620 1587 { 1621 1588 "_type": "object", … … 1659 1626 1660 1627 ----------------------------------------------------- 1661 EXPRESSION: document.body1662 {1663 "_type": "object",1664 "_subtype": "node",1665 "_objectId": "<filtered>",1666 "_description": "body",1667 "_preview": {1668 "_type": "object",1669 "_subtype": "node",1670 "_description": "body",1671 "_lossless": false,1672 "_overflow": true,1673 "_properties": [1674 {1675 "_name": "aLink",1676 "_type": "string",1677 "_value": ""1678 },1679 {1680 "_name": "background",1681 "_type": "string",1682 "_value": ""1683 },1684 {1685 "_name": "bgColor",1686 "_type": "string",1687 "_value": ""1688 },1689 {1690 "_name": "link",1691 "_type": "string",1692 "_value": ""1693 },1694 {1695 "_name": "text",1696 "_type": "string",1697 "_value": ""1698 }1699 ],1700 "_entries": null1701 }1702 }1703 1704 -----------------------------------------------------1705 EXPRESSION: div = document.createElement('div'); div.className = 'foo bar'; div1706 {1707 "_type": "object",1708 "_subtype": "node",1709 "_objectId": "<filtered>",1710 "_description": "div.foo.bar",1711 "_preview": {1712 "_type": "object",1713 "_subtype": "node",1714 "_description": "div.foo.bar",1715 "_lossless": false,1716 "_overflow": true,1717 "_properties": [1718 {1719 "_name": "align",1720 "_type": "string",1721 "_value": ""1722 },1723 {1724 "_name": "title",1725 "_type": "string",1726 "_value": ""1727 },1728 {1729 "_name": "lang",1730 "_type": "string",1731 "_value": ""1732 },1733 {1734 "_name": "translate",1735 "_type": "boolean",1736 "_value": "true"1737 },1738 {1739 "_name": "dir",1740 "_type": "string",1741 "_value": ""1742 }1743 ],1744 "_entries": null1745 }1746 }1747 1748 -----------------------------------------------------1749 EXPRESSION: span = document.createElement('span'); span.id = 'foo'; span1750 {1751 "_type": "object",1752 "_subtype": "node",1753 "_objectId": "<filtered>",1754 "_description": "span#foo",1755 "_preview": {1756 "_type": "object",1757 "_subtype": "node",1758 "_description": "span#foo",1759 "_lossless": false,1760 "_overflow": true,1761 "_properties": [1762 {1763 "_name": "title",1764 "_type": "string",1765 "_value": ""1766 },1767 {1768 "_name": "lang",1769 "_type": "string",1770 "_value": ""1771 },1772 {1773 "_name": "translate",1774 "_type": "boolean",1775 "_value": "true"1776 },1777 {1778 "_name": "dir",1779 "_type": "string",1780 "_value": ""1781 },1782 {1783 "_name": "tabIndex",1784 "_type": "number",1785 "_value": "-1"1786 }1787 ],1788 "_entries": null1789 }1790 }1791 1792 -----------------------------------------------------1793 EXPRESSION: input = document.createElement('input'); input.type = 'password'; input1794 {1795 "_type": "object",1796 "_subtype": "node",1797 "_objectId": "<filtered>",1798 "_description": "input",1799 "_preview": {1800 "_type": "object",1801 "_subtype": "node",1802 "_description": "input",1803 "_lossless": false,1804 "_overflow": true,1805 "_properties": [1806 {1807 "_name": "selectionStart",1808 "_type": "number",1809 "_value": "0"1810 },1811 {1812 "_name": "selectionEnd",1813 "_type": "number",1814 "_value": "0"1815 },1816 {1817 "_name": "selectionDirection",1818 "_type": "string",1819 "_value": "none"1820 },1821 {1822 "_name": "accept",1823 "_type": "string",1824 "_value": ""1825 },1826 {1827 "_name": "alt",1828 "_type": "string",1829 "_value": ""1830 }1831 ],1832 "_entries": null1833 }1834 }1835 1836 -----------------------------------------------------1837 EXPRESSION: text = document.createTextNode('text content'); text1838 {1839 "_type": "object",1840 "_subtype": "node",1841 "_objectId": "<filtered>",1842 "_description": "#text",1843 "_preview": {1844 "_type": "object",1845 "_subtype": "node",1846 "_description": "#text",1847 "_lossless": false,1848 "_overflow": true,1849 "_properties": [1850 {1851 "_name": "wholeText",1852 "_type": "string",1853 "_value": "text content"1854 },1855 {1856 "_name": "splitText",1857 "_type": "function",1858 "_value": ""1859 },1860 {1861 "_name": "replaceWholeText",1862 "_type": "function",1863 "_value": ""1864 },1865 {1866 "_name": "data",1867 "_type": "string",1868 "_value": "text content"1869 },1870 {1871 "_name": "length",1872 "_type": "number",1873 "_value": "12"1874 }1875 ],1876 "_entries": null1877 }1878 }1879 1880 -----------------------------------------------------1881 EXPRESSION: comment = document.createComment('comment content'); comment1882 {1883 "_type": "object",1884 "_subtype": "node",1885 "_objectId": "<filtered>",1886 "_description": "#comment",1887 "_preview": {1888 "_type": "object",1889 "_subtype": "node",1890 "_description": "#comment",1891 "_lossless": false,1892 "_overflow": true,1893 "_properties": [1894 {1895 "_name": "data",1896 "_type": "string",1897 "_value": "comment content"1898 },1899 {1900 "_name": "length",1901 "_type": "number",1902 "_value": "15"1903 },1904 {1905 "_name": "previousElementSibling",1906 "_type": "object",1907 "_subtype": "null",1908 "_value": "null"1909 },1910 {1911 "_name": "nextElementSibling",1912 "_type": "object",1913 "_subtype": "null",1914 "_value": "null"1915 },1916 {1917 "_name": "substringData",1918 "_type": "function",1919 "_value": ""1920 }1921 ],1922 "_entries": null1923 }1924 }1925 1926 -----------------------------------------------------1927 EXPRESSION: svgElement = document.createElementNS('http://www.w3.org/2000/svg', 'rect'); svgElement.classList.add('test'); svgElement1928 {1929 "_type": "object",1930 "_subtype": "node",1931 "_objectId": "<filtered>",1932 "_description": "rect.test",1933 "_preview": {1934 "_type": "object",1935 "_subtype": "node",1936 "_description": "rect.test",1937 "_lossless": false,1938 "_overflow": true,1939 "_properties": [1940 {1941 "_name": "x",1942 "_type": "object",1943 "_value": "SVGAnimatedLength"1944 },1945 {1946 "_name": "y",1947 "_type": "object",1948 "_value": "SVGAnimatedLength"1949 },1950 {1951 "_name": "width",1952 "_type": "object",1953 "_value": "SVGAnimatedLength"1954 },1955 {1956 "_name": "height",1957 "_type": "object",1958 "_value": "SVGAnimatedLength"1959 },1960 {1961 "_name": "rx",1962 "_type": "object",1963 "_value": "SVGAnimatedLength"1964 }1965 ],1966 "_entries": null1967 }1968 }1969 1970 -----------------------------------------------------1971 EXPRESSION: [document.body, div, span, input, text, comment, svgElement]1972 {1973 "_type": "object",1974 "_subtype": "array",1975 "_objectId": "<filtered>",1976 "_description": "Array",1977 "_size": 7,1978 "_preview": {1979 "_type": "object",1980 "_subtype": "array",1981 "_description": "Array",1982 "_lossless": false,1983 "_overflow": false,1984 "_size": 7,1985 "_properties": [1986 {1987 "_name": "0",1988 "_type": "object",1989 "_subtype": "node",1990 "_value": "<body>"1991 },1992 {1993 "_name": "1",1994 "_type": "object",1995 "_subtype": "node",1996 "_value": "<div class=\"foo bar\">"1997 },1998 {1999 "_name": "2",2000 "_type": "object",2001 "_subtype": "node",2002 "_value": "<span id=\"foo\">"2003 },2004 {2005 "_name": "3",2006 "_type": "object",2007 "_subtype": "node",2008 "_value": "<input type=\"password\">"2009 },2010 {2011 "_name": "4",2012 "_type": "object",2013 "_subtype": "node",2014 "_value": "#text \"text content\""2015 },2016 {2017 "_name": "5",2018 "_type": "object",2019 "_subtype": "node",2020 "_value": "<!--comment content-->"2021 },2022 {2023 "_name": "6",2024 "_type": "object",2025 "_subtype": "node",2026 "_value": "<rect class=\"test\">"2027 }2028 ],2029 "_entries": null2030 }2031 }2032 2033 -----------------------------------------------------2034 EXPRESSION: document.head.children2035 {2036 "_type": "object",2037 "_subtype": "array",2038 "_objectId": "<filtered>",2039 "_description": "HTMLCollection",2040 "_size": 3,2041 "_preview": {2042 "_type": "object",2043 "_subtype": "array",2044 "_description": "HTMLCollection",2045 "_lossless": false,2046 "_overflow": false,2047 "_size": 3,2048 "_properties": [2049 {2050 "_name": "0",2051 "_type": "object",2052 "_subtype": "node",2053 "_value": "<meta>"2054 },2055 {2056 "_name": "1",2057 "_type": "object",2058 "_subtype": "node",2059 "_value": "<script>"2060 },2061 {2062 "_name": "2",2063 "_type": "object",2064 "_subtype": "node",2065 "_value": "<script>"2066 }2067 ],2068 "_entries": null2069 }2070 }2071 2072 -----------------------------------------------------2073 EXPRESSION: document.getElementsByClassName('my-test')2074 {2075 "_type": "object",2076 "_subtype": "array",2077 "_objectId": "<filtered>",2078 "_description": "HTMLCollection",2079 "_size": 3,2080 "_preview": {2081 "_type": "object",2082 "_subtype": "array",2083 "_description": "HTMLCollection",2084 "_lossless": false,2085 "_overflow": false,2086 "_size": 3,2087 "_properties": [2088 {2089 "_name": "0",2090 "_type": "object",2091 "_subtype": "node",2092 "_value": "<p class=\"my-test\">"2093 },2094 {2095 "_name": "1",2096 "_type": "object",2097 "_subtype": "node",2098 "_value": "<p class=\"my-test\">"2099 },2100 {2101 "_name": "2",2102 "_type": "object",2103 "_subtype": "node",2104 "_value": "<p class=\"my-test\">"2105 }2106 ],2107 "_entries": null2108 }2109 }2110 2111 -----------------------------------------------------2112 EXPRESSION: document.querySelectorAll('.my-test')2113 {2114 "_type": "object",2115 "_subtype": "array",2116 "_objectId": "<filtered>",2117 "_description": "NodeList",2118 "_size": 3,2119 "_preview": {2120 "_type": "object",2121 "_subtype": "array",2122 "_description": "NodeList",2123 "_lossless": false,2124 "_overflow": false,2125 "_size": 3,2126 "_properties": [2127 {2128 "_name": "0",2129 "_type": "object",2130 "_subtype": "node",2131 "_value": "<p class=\"my-test\">"2132 },2133 {2134 "_name": "1",2135 "_type": "object",2136 "_subtype": "node",2137 "_value": "<p class=\"my-test\">"2138 },2139 {2140 "_name": "2",2141 "_type": "object",2142 "_subtype": "node",2143 "_value": "<p class=\"my-test\">"2144 }2145 ],2146 "_entries": null2147 }2148 }2149 2150 -----------------------------------------------------2151 1628 EXPRESSION: error = null; try { [].x.x; } catch (e) { error = e; }; error 2152 1629 { … … 2159 1636 "_subtype": "error", 2160 1637 "_description": "TypeError: undefined is not an object (evaluating '[].x.x')", 2161 "_lossless": true,1638 "_lossless": false, 2162 1639 "_overflow": false, 2163 1640 "_properties": [ … … 2170 1647 "_name": "line", 2171 1648 "_type": "number", 2172 "_value": " 1"1649 "_value": "3" 2173 1650 }, 2174 1651 { … … 2180 1657 "_name": "stack", 2181 1658 "_type": "string", 2182 "_value": " eval code\neval@[native code]\n_evaluateOn\n_evaluateAndWrap\nevaluate"2183 } 2184 ], 2185 "_entries": null 2186 } 2187 } 2188 2189 ----------------------------------------------------- 2190 EXPRESSION: error = null; try { eval( 'if()'); } catch (e) { error = e; }; error1659 "_value": "global code\nevaluateWithScopeExtension@[native code]\n_evaluateOn\n_evaluateAndWrap\nevaluate" 1660 } 1661 ], 1662 "_entries": null 1663 } 1664 } 1665 1666 ----------------------------------------------------- 1667 EXPRESSION: error = null; try { eval("if()"); } catch (e) { error = e; }; error 2191 1668 { 2192 1669 "_type": "object", … … 2198 1675 "_subtype": "error", 2199 1676 "_description": "SyntaxError: Unexpected token ')'", 2200 "_lossless": true,1677 "_lossless": false, 2201 1678 "_overflow": false, 2202 1679 "_properties": [ … … 2209 1686 "_name": "line", 2210 1687 "_type": "number", 2211 "_value": " 1"1688 "_value": "3" 2212 1689 }, 2213 1690 { … … 2219 1696 "_name": "stack", 2220 1697 "_type": "string", 2221 "_value": "eval@[native code]\n eval code\neval@[native code]\n_evaluateOn\n_evaluateAndWrap\nevaluate"2222 } 2223 ], 2224 "_entries": null 2225 } 2226 } 2227 2228 ----------------------------------------------------- 2229 EXPRESSION: error = null; try { document.createTextNode( '').splitText(100); } catch (e) { error = e; }; error1698 "_value": "eval@[native code]\nglobal code\nevaluateWithScopeEx…ative code]\n_evaluateOn\n_evaluateAndWrap\nevaluate" 1699 } 1700 ], 1701 "_entries": null 1702 } 1703 } 1704 1705 ----------------------------------------------------- 1706 EXPRESSION: error = null; try { document.createTextNode("").splitText(100); } catch (e) { error = e; }; error 2230 1707 { 2231 1708 "_type": "object", … … 2253 1730 "_name": "message", 2254 1731 "_type": "string", 2255 "_value": " IndexSizeError: DOM Exception 1"1732 "_value": "The index is not in the allowed range." 2256 1733 }, 2257 1734 { 2258 1735 "_name": "line", 2259 1736 "_type": "number", 2260 "_value": " 1"1737 "_value": "3" 2261 1738 }, 2262 1739 { … … 2291 1768 2292 1769 ----------------------------------------------------- 2293 EXPRESSION: map = new Map; map.set(1, 2); map.set( 'key', 'value'); map1770 EXPRESSION: map = new Map; map.set(1, 2); map.set("key", "value"); map 2294 1771 { 2295 1772 "_type": "object", … … 2398 1875 "_type": "object", 2399 1876 "_subtype": "node", 2400 "_description": " body",1877 "_description": "<body>", 2401 1878 "_lossless": false, 2402 1879 "_overflow": true, … … 2689 2166 2690 2167 ----------------------------------------------------- 2691 EXPRESSION: set = new Set; set.add(1); set.add(2); set.add( 'key'); set2168 EXPRESSION: set = new Set; set.add(1); set.add(2); set.add("key"); set 2692 2169 { 2693 2170 "_type": "object", … … 2776 2253 "_type": "object", 2777 2254 "_subtype": "node", 2778 "_description": " body",2255 "_description": "<body>", 2779 2256 "_lossless": false, 2780 2257 "_overflow": true, … … 2978 2455 2979 2456 ----------------------------------------------------- 2980 EXPRESSION: 'a'[Symbol.iterator]()2457 EXPRESSION: "a"[Symbol.iterator]() 2981 2458 { 2982 2459 "_type": "object", … … 3014 2491 3015 2492 ----------------------------------------------------- 3016 EXPRESSION: 'long string'[Symbol.iterator]()2493 EXPRESSION: "long string"[Symbol.iterator]() 3017 2494 { 3018 2495 "_type": "object", … … 3189 2666 3190 2667 ----------------------------------------------------- 3191 EXPRESSION: [1, 'two', 3, 'four', 5, 'size'][Symbol.iterator]()2668 EXPRESSION: [1, "two", 3, "four", 5, "size"][Symbol.iterator]() 3192 2669 { 3193 2670 "_type": "object", … … 3272 2749 3273 2750 ----------------------------------------------------- 3274 EXPRESSION: [1, 'two', 3, 'four', 5, 'size'].keys()2751 EXPRESSION: [1, "two", 3, "four", 5, "size"].keys() 3275 2752 { 3276 2753 "_type": "object", … … 3355 2832 3356 2833 ----------------------------------------------------- 3357 EXPRESSION: [1, 'two', 3, 'four', 5, 'size'].entries()2834 EXPRESSION: [1, "two", 3, "four", 5, "size"].entries() 3358 2835 { 3359 2836 "_type": "object", … … 3503 2980 3504 2981 ----------------------------------------------------- 3505 EXPRESSION: map = new Map; map.set(1, 2); map.set( 'key', 'value'); map.values()2982 EXPRESSION: map = new Map; map.set(1, 2); map.set("key", "value"); map.values() 3506 2983 { 3507 2984 "_type": "object", … … 3850 3327 3851 3328 ----------------------------------------------------- 3852 EXPRESSION: x = undefined; (function() { x = arguments; })(1, 'two'); x[Symbol.iterator]()3329 EXPRESSION: x = undefined; (function() { x = arguments; })(1, "two"); x[Symbol.iterator]() 3853 3330 { 3854 3331 "_type": "object", … … 3923 3400 3924 3401 ----------------------------------------------------- 3925 EXPRESSION: iter = [1, 2][Symbol.iterator](); iter[ 'return'] = function(){}; iter3402 EXPRESSION: iter = [1, 2][Symbol.iterator](); iter["return"] = function(){}; iter 3926 3403 { 3927 3404 "_type": "object", … … 4004 3481 "_type": "object", 4005 3482 "_description": "Promise", 4006 "_lossless": true,3483 "_lossless": false, 4007 3484 "_overflow": false, 4008 3485 "_properties": [ … … 4027 3504 "_type": "object", 4028 3505 "_description": "Promise", 4029 "_lossless": true,3506 "_lossless": false, 4030 3507 "_overflow": false, 4031 3508 "_properties": [ … … 4048 3525 4049 3526 ----------------------------------------------------- 4050 EXPRESSION: Promise.reject( 'result')3527 EXPRESSION: Promise.reject("result") 4051 3528 { 4052 3529 "_type": "object", … … 4056 3533 "_type": "object", 4057 3534 "_description": "Promise", 4058 "_lossless": true,3535 "_lossless": false, 4059 3536 "_overflow": false, 4060 3537 "_properties": [ … … 4085 3562 "_type": "object", 4086 3563 "_description": "Promise", 4087 "_lossless": true,3564 "_lossless": false, 4088 3565 "_overflow": false, 4089 3566 "_properties": [ … … 4114 3591 "_type": "object", 4115 3592 "_description": "Promise", 4116 "_lossless": true,3593 "_lossless": false, 4117 3594 "_overflow": false, 4118 3595 "_properties": [ … … 4217 3694 "_description": "Person" 4218 3695 }, 4219 "_functionDescription": " function Person(name){}"3696 "_functionDescription": "class Person { constructor(name){} get fullName(){} methodName(p1, p2){} }" 4220 3697 } 4221 3698 … … 4226 3703 "_objectId": "<filtered>", 4227 3704 "_description": "function methodName(p1, p2){}" 3705 } 3706 3707 ----------------------------------------------------- 3708 EXPRESSION: new Person 3709 { 3710 "_type": "object", 3711 "_objectId": "<filtered>", 3712 "_description": "Person", 3713 "_preview": { 3714 "_type": "object", 3715 "_description": "Person", 3716 "_lossless": false, 3717 "_overflow": false, 3718 "_properties": [], 3719 "_entries": null 3720 } 4228 3721 } 4229 3722 … … 4240 3733 "_description": "B" 4241 3734 }, 4242 "_functionDescription": " function B() { super(...arguments);}"3735 "_functionDescription": "class B extends Alpha { methodB(){} }" 4243 3736 } 4244 3737 -
trunk/LayoutTests/inspector/model/remote-object.html
r218836 r218862 12 12 13 13 // Null / undefined 14 {expression: "null"},15 {expression: "undefined"},14 {expression: `null`}, 15 {expression: `undefined`}, 16 16 17 17 // Symbol 18 {expression: "Symbol()"},19 {expression: "Symbol('test')"},18 {expression: `Symbol()`}, 19 {expression: `Symbol("test")`}, 20 20 21 21 // Primatives: 22 22 23 23 // Boolean 24 {expression: "true"},25 {expression: "false"},24 {expression: `true`}, 25 {expression: `false`}, 26 26 27 27 // Number 28 {expression: "0"},29 {expression: "-0"},30 {expression: "1"},31 {expression: "-1"},32 {expression: "1.234"},33 {expression: "-1.234"},34 {expression: "1e3"},35 {expression: "Number.MAX_VALUE"},36 {expression: "Number.MIN_VALUE"},37 {expression: "NaN"},38 {expression: "Infinity"},39 {expression: "-Infinity"},28 {expression: `0`}, 29 {expression: `-0`}, 30 {expression: `1`}, 31 {expression: `-1`}, 32 {expression: `1.234`}, 33 {expression: `-1.234`}, 34 {expression: `1e3`}, 35 {expression: `Number.MAX_VALUE`}, 36 {expression: `Number.MIN_VALUE`}, 37 {expression: `NaN`}, 38 {expression: `Infinity`}, 39 {expression: `-Infinity`}, 40 40 41 41 // Strings 42 {expression: "''"}, 43 {expression: "'\"'"}, // a single quote 44 {expression: "\"'\""}, // a double quote 45 {expression: "'string'"}, 46 {expression: "'Unicode…'"}, 47 {expression: "'I wish I had something to put here.'"}, 42 {expression: `''`}, 43 {expression: `'"'`}, // a single quoted string 44 {expression: `"'"`}, // a double quoted string 45 {expression: "`template`"}, // a template string 46 {expression: `"string"`}, 47 {expression: `"Unicode…"`}, 48 {expression: `"I wish I had something to put here."`}, 48 49 49 50 // Function 50 {expression: "(function(){})"},51 {expression: "function foo(){}; foo"},52 {expression: "function myFunction(a, b) { console.log(a, b); }; myFunction"},53 {expression: "function myTarget(a, b) { console.log(a, b); }; myTarget.bind(null)"}, // bound function54 {expression: "Array.prototype.push"}, // native (ECMAScript)55 {expression: "window.setTimeout"}, // native (DOM)56 {expression: "Object.getOwnPropertyDescriptor({ get getter() { return 1 } }, 'getter').get"}, // getter57 {expression: "Object.getOwnPropertyDescriptor({ set setter(v) { console.log(v); } }, 'setter').set"}, // setter51 {expression: `(function(){})`}, 52 {expression: `function foo(){}; foo`}, 53 {expression: `function myFunction(a, b) { console.log(a, b); }; myFunction`}, 54 {expression: `function myTarget(a, b) { console.log(a, b); }; myTarget.bind(null)`}, // bound function 55 {expression: `Array.prototype.push`}, // native (ECMAScript) 56 {expression: `window.setTimeout`}, // native (DOM) 57 {expression: `Object.getOwnPropertyDescriptor({ get getter() { return 1 } }, "getter").get`}, // getter 58 {expression: `Object.getOwnPropertyDescriptor({ set setter(v) { console.log(v); } }, "setter").set`}, // setter 58 59 59 60 // Objects: 60 61 61 62 // Date 62 {expression: "new Date(99)", browserOnly: true},63 {expression: "new Date(1421903245871)", browserOnly: true},63 {expression: `new Date(99)`, browserOnly: true}, 64 {expression: `new Date(1421903245871)`, browserOnly: true}, 64 65 65 66 // Regexp 66 {expression: "/ /"},67 {expression: "/(?:)/"},68 {expression: "/^r(e)g[e]{1,}x+/"},69 {expression: "/^r(e)g[e]{1,}x+/ig"},70 {expression: "new RegExp('')"},71 {expression: "new RegExp('test', 'i')"},67 {expression: `/ /`}, 68 {expression: `/(?:)/`}, 69 {expression: `/^r(e)g[e]{1,}x+/`}, 70 {expression: `/^r(e)g[e]{1,}x+/ig`}, 71 {expression: `new RegExp("")`}, 72 {expression: `new RegExp("test", "i")`}, 72 73 73 74 // Array 74 {expression: "[]"},75 {expression: "[0, -0, 1, 2]"},76 {expression: "[[1],[2],[3]]"},77 {expression: "[true, 1, 1.234, 'string', /regex/]"},78 {expression: "[[null]]"},79 {expression: "[[undefined]]"},80 {expression: "[{a:1}, {b:2}, {c:2}]"},81 {expression: "[[{a:1}, {b:2}, {c:2}]]"},82 {expression: "arr = []; arr[0] = arr; arr"}, // cyclic83 {expression: "arr = []; arr.length = 100; arr"}, // 100 empty elements84 {expression: "arr = []; arr.length = 100; arr.fill(1)"}, // 100 full elements85 {expression: "arr = []; arr.length = 100; arr[10] = 1; arr"}, // sparse75 {expression: `[]`}, 76 {expression: `[0, -0, 1, 2]`}, 77 {expression: `[[1],[2],[3]]`}, 78 {expression: `[true, 1, 1.234, "string", /regex/]`}, 79 {expression: `[[null]]`}, 80 {expression: `[[undefined]]`}, 81 {expression: `[{a:1}, {b:2}, {c:2}]`}, 82 {expression: `[[{a:1}, {b:2}, {c:2}]]`}, 83 {expression: `arr = []; arr[0] = arr; arr`}, // cyclic 84 {expression: `arr = []; arr.length = 100; arr`}, // 100 empty elements 85 {expression: `arr = []; arr.length = 100; arr.fill(1)`}, // 100 full elements 86 {expression: `arr = []; arr.length = 100; arr[10] = 1; arr`}, // sparse 86 87 87 88 // Array-like (Arguments, TypedArrays) 88 {expression: "a = null; (function() { a = arguments; })(1, '2', /3/); a"},89 {expression: "new Int32Array(new ArrayBuffer(16))"},90 {expression: "new Uint8ClampedArray(12)"},91 {expression: "var intArray = new Int32Array(new ArrayBuffer(16)); for (var i = 0; i < intArray.length; ++i) intArray[i] = i; intArray"},92 {expression: "var buffer = new ArrayBuffer(10000000); var int8View = new Int8Array(buffer); int8View"}, // 10000000 elements.89 {expression: `a = null; (function() { a = arguments; })(1, "2", /3/); a`}, 90 {expression: `new Int32Array(new ArrayBuffer(16))`}, 91 {expression: `new Uint8ClampedArray(12)`}, 92 {expression: `var intArray = new Int32Array(new ArrayBuffer(16)); for (var i = 0; i < intArray.length; ++i) intArray[i] = i; intArray`}, 93 {expression: `var buffer = new ArrayBuffer(10000000); var int8View = new Int8Array(buffer); int8View`}, // 10000000 elements. 93 94 94 95 // Object 95 {expression: "({})"}, 96 {expression: "({a: 1})"}, 97 {expression: "({a: 1, b: 0, c: -0})"}, 98 {expression: "({a: 1, b: \"string\", c: /regex/, d: Symbol('sym')})"}, 99 {expression: "o = {a:1}; o.b = o; o"}, // cyclic 100 {expression: "({a:function a(){}, b:function b(){}, get getter(){}, set setter(v){}})"}, 101 {expression: "function Foo() {}; new Foo"}, 102 {expression: "var Foo2 = function() {}; new Foo2"}, 103 {expression: "var namespace = {}; namespace.Foo3 = function() {}; new namespace.Foo3"}, 104 {expression: "function Bar() { this._x = 5 }; Bar.prototype = {constructor: Bar, get x() {return this._x;}}; new Bar"}, 105 {expression: "function Bar2() { this._x = 5 }; Bar.prototype = {get x() {return this._x;}}; new Bar2"}, 106 {expression: "window.loadEvent"}, // window.loadEvent is set inside of <body onload="..."> below. 107 {expression: "new ArrayBuffer(16)"}, 108 {expression: "new DataView(new ArrayBuffer(16))"}, 109 {expression: "obj = {}; obj['prop'] = 1; obj[Symbol()] = 2; obj[Symbol('sym')] = 3; obj[Symbol('sym')] = 4; obj[Symbol.iterator] = Symbol(); obj"}, // Symbol properties 110 111 // Node 112 {expression: "document.body"}, 113 {expression: "div = document.createElement('div'); div.className = 'foo bar'; div"}, 114 {expression: "span = document.createElement('span'); span.id = 'foo'; span"}, 115 {expression: "input = document.createElement('input'); input.type = 'password'; input"}, 116 {expression: "text = document.createTextNode('text content'); text"}, 117 {expression: "comment = document.createComment('comment content'); comment"}, 118 {expression: "svgElement = document.createElementNS('http://www.w3.org/2000/svg', 'rect'); svgElement.classList.add('test'); svgElement"}, 119 {expression: "[document.body, div, span, input, text, comment, svgElement]"}, 120 121 // Node Collections (NodeLists / Collections) 122 {expression: "document.all", browserOnly: true}, // HTMLAllCollection 123 {expression: "document.head.children"}, // HTMLCollection 124 {expression: "document.getElementsByClassName('my-test')"}, // NodeList 125 {expression: "document.querySelectorAll('.my-test')"}, // Non-Live NodeList 96 {expression: `({})`}, 97 {expression: `({a: 1})`}, 98 {expression: `({a: 1, b: 0, c: -0})`}, 99 {expression: `({a: 1, b: \"string\", c: /regex/, d: Symbol("sym")})`}, 100 {expression: `o = {a:1}; o.b = o; o`}, // cyclic 101 {expression: `({a:function a(){}, b:function b(){}, get getter(){}, set setter(v){}})`}, 102 {expression: `function Foo() {}; new Foo`}, 103 {expression: `var Foo2 = function() {}; new Foo2`}, 104 {expression: `var namespace = {}; namespace.Foo3 = function() {}; new namespace.Foo3`}, 105 {expression: `function Bar() { this._x = 5 }; Bar.prototype = {constructor: Bar, get x() {return this._x;}}; new Bar`}, 106 {expression: `function Bar2() { this._x = 5 }; Bar.prototype = {get x() {return this._x;}}; new Bar2`}, 107 {expression: `new ArrayBuffer(16)`}, 108 {expression: `new DataView(new ArrayBuffer(16))`}, 109 {expression: `obj = {}; obj["prop"] = 1; obj[Symbol()] = 2; obj[Symbol("sym")] = 3; obj[Symbol("sym")] = 4; obj[Symbol.iterator] = Symbol(); obj`}, // Symbol properties 126 110 127 111 // Error 128 {expression: "error = null; try { [].x.x; } catch (e) { error = e; }; error"},129 {expression: "error = null; try { eval('if()'); } catch (e) { error = e; }; error"},130 {expression: "error = null; try { document.createTextNode('').splitText(100); } catch (e) { error = e; }; error"},112 {expression: `error = null; try { [].x.x; } catch (e) { error = e; }; error`}, 113 {expression: `error = null; try { eval("if()"); } catch (e) { error = e; }; error`}, 114 {expression: `error = null; try { document.createTextNode("").splitText(100); } catch (e) { error = e; }; error`}, 131 115 132 116 // Map / WeakMap 133 {expression: "new Map"},134 {expression: "map = new Map; map.set(1, 2); map.set('key', 'value'); map"},135 {expression: "map = new Map; map.set({a:1}, {b:2}); map.set(document.body, [1,2]); map"},136 {expression: "map = new Map; for (var i = 0; i <= 100; i++) map.set(i, i); map"},137 {expression: "map = new Map; map.set(map, map); map"},138 {expression: "map = new WeakMap; strongKey = {id:1}; map.set(strongKey, [1,2]); map"},117 {expression: `new Map`}, 118 {expression: `map = new Map; map.set(1, 2); map.set("key", "value"); map`}, 119 {expression: `map = new Map; map.set({a:1}, {b:2}); map.set(document.body, [1,2]); map`}, 120 {expression: `map = new Map; for (var i = 0; i <= 100; i++) map.set(i, i); map`}, 121 {expression: `map = new Map; map.set(map, map); map`}, 122 {expression: `map = new WeakMap; strongKey = {id:1}; map.set(strongKey, [1,2]); map`}, 139 123 140 124 // Set / WeakSet 141 {expression: "new Set"},142 {expression: "set = new Set; set.add(1); set.add(2); set.add('key'); set"},143 {expression: "set = new Set; set.add({a:1}); set.add(document.body); set.add([1,2]); set"},144 {expression: "set = new Set; for (var i = 0; i <= 100; i++) set.add(i); set"},145 {expression: "set = new Set; set.add(set); set"},146 {expression: "set = new WeakSet; strongKey = {id:1}; set.add(strongKey); set"},125 {expression: `new Set`}, 126 {expression: `set = new Set; set.add(1); set.add(2); set.add("key"); set`}, 127 {expression: `set = new Set; set.add({a:1}); set.add(document.body); set.add([1,2]); set`}, 128 {expression: `set = new Set; for (var i = 0; i <= 100; i++) set.add(i); set`}, 129 {expression: `set = new Set; set.add(set); set`}, 130 {expression: `set = new WeakSet; strongKey = {id:1}; set.add(strongKey); set`}, 147 131 148 132 // Iterators 149 {expression: "'a'[Symbol.iterator]()"},150 {expression: "'long string'[Symbol.iterator]()"},151 {expression: "[][Symbol.iterator]()"},152 {expression: "[1][Symbol.iterator]()"},153 {expression: "[1, 'two', 3, 'four', 5, 'size'][Symbol.iterator]()"},154 {expression: "[1, 'two', 3, 'four', 5, 'size'].keys()"},155 {expression: "[1, 'two', 3, 'four', 5, 'size'].entries()"},156 {expression: "map = new Map; map.set(1, 2); map.set('key', 'value'); map.values()"},157 {expression: "map.keys()"},158 {expression: "map.entries()"},159 {expression: "set = new Set; for (var i = 0; i <= 100; i++) set.add(i); set.values()"},160 {expression: "map.entries()"},161 {expression: "x = undefined; (function() { x = arguments; })(1, 'two'); x[Symbol.iterator]()"},162 {expression: "iter = [1, 2][Symbol.iterator](); iter['return'] = function(){}; iter"},133 {expression: `"a"[Symbol.iterator]()`}, 134 {expression: `"long string"[Symbol.iterator]()`}, 135 {expression: `[][Symbol.iterator]()`}, 136 {expression: `[1][Symbol.iterator]()`}, 137 {expression: `[1, "two", 3, "four", 5, "size"][Symbol.iterator]()`}, 138 {expression: `[1, "two", 3, "four", 5, "size"].keys()`}, 139 {expression: `[1, "two", 3, "four", 5, "size"].entries()`}, 140 {expression: `map = new Map; map.set(1, 2); map.set("key", "value"); map.values()`}, 141 {expression: `map.keys()`}, 142 {expression: `map.entries()`}, 143 {expression: `set = new Set; for (var i = 0; i <= 100; i++) set.add(i); set.values()`}, 144 {expression: `map.entries()`}, 145 {expression: `x = undefined; (function() { x = arguments; })(1, "two"); x[Symbol.iterator]()`}, 146 {expression: `iter = [1, 2][Symbol.iterator](); iter["return"] = function(){}; iter`}, 163 147 164 148 // Promise 165 {expression: "new Promise(function(){})"},166 {expression: "Promise.reject()"},167 {expression: "Promise.reject('result')"},168 {expression: "Promise.resolve()"},169 {expression: "Promise.resolve({result:1})"},149 {expression: `new Promise(function(){})`}, 150 {expression: `Promise.reject()`}, 151 {expression: `Promise.reject("result")`}, 152 {expression: `Promise.resolve()`}, 153 {expression: `Promise.resolve({result:1})`}, 170 154 171 155 // Proxy 172 {expression: "new Proxy({x:1, y:1}, {handler: true})"},173 {expression: "new Proxy(new Proxy({foo:1, bar:1}, {}), {})"},156 {expression: `new Proxy({x:1, y:1}, {handler: true})`}, 157 {expression: `new Proxy(new Proxy({foo:1, bar:1}, {}), {})`}, 174 158 175 159 // Classes 176 160 177 {expression: "Person = class Person { constructor(name){} get fullName(){} methodName(p1, p2){} }; Person"}, // Constructor => class type178 {expression: "Person.prototype.methodName"}, // Method => just a function type179 {expression: "new Person"}, // Instance, not lossless, it's prototype may have interesting methods to show180 {expression: "Alpha = class A { methodA(){} }; Beta = class B extends Alpha { methodB(){} }; Beta"},181 {expression: "[Beta]"},161 {expression: `Person = class Person { constructor(name){} get fullName(){} methodName(p1, p2){} }; Person`}, // Constructor => class type 162 {expression: `Person.prototype.methodName`}, // Method => just a function type 163 {expression: `new Person`}, // Instance, not lossless, it's prototype may have interesting methods to show 164 {expression: `Alpha = class A { methodA(){} }; Beta = class B extends Alpha { methodB(){} }; Beta`}, 165 {expression: `[Beta]`}, 182 166 183 167 // Improveable: 184 168 185 169 // Sealed / Frozen objects. 186 {expression: "Object.seal({})"},187 {expression: "Object.freeze({})"},170 {expression: `Object.seal({})`}, 171 {expression: `Object.freeze({})`}, 188 172 ]; 189 173 … … 197 181 </script> 198 182 </head> 199 <body onload="window.loadEvent = event; runTest(); runInBrowserTest();"> 200 <p class="my-test"></p><p class="my-test"></p><p class="my-test"></p> 201 </body> 183 <body onload="runTest(); runInBrowserTest();"></body> 202 184 </html> -
trunk/LayoutTests/inspector/model/resources/remote-object-utilities.js
r218836 r218862 35 35 if (browserOnly) { 36 36 checkComplete(); 37 return;37 continue; 38 38 } 39 39
Note: See TracChangeset
for help on using the changeset viewer.