forked from whatwg/webidl
-
Notifications
You must be signed in to change notification settings - Fork 0
/
testable_assertions.txt
154 lines (141 loc) · 8 KB
/
testable_assertions.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
{
"s4_001": {
"title": "Section 4: Objects should be extensible by default",
"specRef": "#ecmascript-binding > p:nth-child(6)",
"notes": "Test three objects, an instance ('document'), an interface object ('XMLHttpRequest'), and an interface prototype object ('Node.prototype') to be sure they are all [Extensible], meaning that Object.isExtensible(x) returns true for each of these objects.",
"author": "Travis Leithead",
"date": "2012-10-03T23:14:03.466Z",
"testURL": "",
"testApproved": false
},
"s4_002": {
"title": "Section 4: Objects should have an internal prototype of Object.prototype unless otherwise noted",
"specRef": "#ecmascript-binding > p:nth-child(7)",
"notes": "Interface objects are out-of-scope (their prototypes are Function), platform array objects are out-of-scope (their prototypes are Array), various constants are natively typed (Number, String, Boolean, etc.) and are likewise out-of-scope. Test an interface prototype object ('Event.prototype') using Object.getPrototypeOf(x) and compare to Object.prototype.",
"author": "Travis Leithead",
"date": "2012-10-03T23:26:34.320Z",
"testURL": "",
"testApproved": false
},
"s4_003": {
"title": "Section 4: objects defined to be function objects have an internal prototype of Function.prototype",
"specRef": "#ecmascript-binding > ul:nth-child(9) > li:nth-child(1)",
"notes": "document.getElementById is defined to be a function. Ensure that Object.getPrototypeOf(x) equals Function.prototype. Also test interface objects, both with and without inheritance: Object.getPrototypeOf(\"XMLHttpRequest\") and Object.getPrototypeOf(\"EventTarget\")",
"author": "Travis Leithead",
"date": "2012-10-03T23:31:47.639Z",
"testURL": "",
"testApproved": false
},
"s4_004": {
"title": "Section 4: objects defined to be function objects have [[Get]] semantics",
"specRef": "#ecmascript-binding > ul:nth-child(9) > li:nth-child(2)",
"notes": "In 15.3.5.4\n#1, call [[Get]] internal method on O from 8.12.3 looking for prop P (by...)\n In 8.12.3 \n #1 get the descriptor for P on O(by...)\n In 8.12.2 \n #1 get prop P by calling [[GetOwnProperty]] on O (by...)\n In 8.12.1\n #1 if not own property return undefined\n #2 make empty propdesc D\n #3-8 populate the propdesc and return it.\n #2 if not undefined, return prop\n #3 get the [[Prototype]] of O\n #4 if null, return undefined\n #5 return recursive result on [[Prototype]] of O\n #2 if not defined, return undefined\n #3 if it's a data property, return the value\n #4-5 its an accessor property, if the getter is not defined, return undefined\n #6 Call the getter on the object\n#2 If P is 'caller' in strict mode then throw TypeError\n#3 return the result\n\nSummary: Does a prototype lookup.\nTest that lookups off of document.getElementById have the following characterisitcs:\n* x.notThere returns undefined\n* x.call returns a function object\n* Object.defineProperty(y) -- a value property -- to the instance (and also on a prototype) and verify that it is returned.\n* Object.defineProperty(y) -- an accessor property -- to the instance (and also on a prototype) and verify that the getter is called.\n* Enable strict mode, then validate that x.caller throws TypeError",
"author": "Travis Leithead",
"date": "2012-10-04T00:09:46.757Z",
"testURL": "",
"testApproved": false
}
,
"s4.1_001": {
"title": "Section 4.1 Each global environment has a unique set of initial objects",
"specRef": "#es-environment > p:nth-child(4)",
"notes": "Using two iframes, validate that each has a unique copy of the Node, Element, and Document initial objects (interface objects)",
"author": "Travis Leithead",
"date": "2012-10-09T19:18:48.326Z",
"testURL": "",
"testApproved": false
},
"s4.1_002": {
"title": "Section 4.1 prototypes of initial objects come from the same global environment",
"specRef": "#es-environment > p:nth-child(4)",
"notes": "Using two iframes, validate that each has a unique copy of Node's [[prototype]], Element's [[prototype]], and Document's [[prototype]] objects and that those objects ultimately chain up to the corresponding Object.prototype belonging to the corresponding global environment in each iframe.",
"author": "Travis Leithead",
"date": "2012-10-09T19:22:39.482Z",
"testURL": "",
"testApproved": false
},
"s4.1_003": {
"title": "Section 4.1 Test the Object.prototype.toString method",
"specRef": "#es-environment > ol:nth-child(9) > li:nth-child(1)",
"notes": "Specifically, validate the input/output combinations for:\n1.1\n1.2\n1.5 (for a platform object, interface prototype object, exception interface prototype object)\nand the property descriptor for step 3.",
"author": "Travis Leithead",
"date": "2012-10-09T19:31:12.107Z",
"testURL": "",
"testApproved": false
},
"s4.2.2_01": {
"title": "Section 4.2.2. void functions return undefined",
"specRef": "#es-void > p:nth-child(2)",
"notes": "Test using document.write, defined with return type of void in HTML5. Also test EventTarget.addEventListener for a similar API.",
"author": "Travis Leithead",
"date": "2012-10-09T19:56:21.351Z",
"testURL": "",
"testApproved": false
}
,
"s4.2.2_02": {
"title": "Section 4.2.2. JavaScript function returning a value for a void function is discarded",
"specRef": "#es-void > p:nth-child(3)",
"notes": "Test DOML3Event's addEventListener, Geolocation's PositionCallback callback, and MediaQueryListListener's \"handleChange\" method.",
"author": "Travis Leithead",
"date": "2012-10-10T19:45:11.785Z",
"testURL": "",
"testApproved": false
}
,
"s4.2.3_01": {
"title": "Section 4.2.3 ECMAScript-to-boolean conversion",
"specRef": "#es-boolean > p:nth-child(2)",
"notes": "Can you cloneNode with its optional boolean parameter to send a combination of values to the ToBoolean(V) meta function and validate that the converstions are happening with the expected results in the cloned content.",
"author": "Travis Leithead",
"date": "2012-10-10T22:09:09.533Z",
"testURL": "",
"testApproved": false
},
"s4.2.3_02": {
"title": "Section 4.2.3. boolean-to-ECMAScript true/false",
"specRef": "#es-boolean > p:nth-child(4)",
"notes": "This conversion can be demonstrated by the return value from the \"hasAttributes\" method of the Node interface. Can check on a new element with no attributes for a \"false\" return value, and after adding an attribute, a \"true\" return value.",
"author": "Travis Leithead",
"date": "2012-10-10T22:06:47.132Z",
"testURL": "",
"testApproved": false
},
"s4.2.4_00": {
"title": "Section 4.2.4. How to test byte?",
"specRef": "#es-byte",
"notes": "Can't seem to find any specs that are using byte in which this functionality could be tested through an implementation.",
"author": "Travis Leithead",
"date": "2012-10-10T22:21:04.431Z",
"testURL": "",
"testApproved": false
},
"s4.2.5_00": {
"title": "Section 4.2.5. How to test octet?",
"specRef": "#es-octet",
"notes": "Can't seem to find any specs that are using octet in which this functionality could be tested through an implementation.",
"author": "Travis Leithead",
"date": "2012-10-10T22:27:55.197Z",
"testURL": "",
"testApproved": false
}
,
"travil_test_2": {
"title": "The Initial publication of WebIDL (at the bottom of the spec)",
"specRef": "#changes > dl:nth-child(4) > dt:nth-child(19)",
"notes": "17 October 2007 was the FPWD.\nTime to start testing.",
"author": "Microsoft",
"date": "2012-07-11T23:40:41.624Z",
"testURL": "",
"testApproved": false
},
"travil_test_3": {
"title": "This assertion should not be found (by design)",
"specRef": "#does_not_exist > div",
"notes": "This is for testing purposes only (testing the framework)",
"author": "Microsoft",
"date": "2012-07-11T23:40:41.624Z",
"testURL": "",
"testApproved": false
}
}