OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
77 | 77 |
78 | 78 |
79 // Functions that we associate with generator objects are actually defined by | 79 // Functions that we associate with generator objects are actually defined by |
80 // a common prototype. | 80 // a common prototype. |
81 function TestGeneratorObjectPrototype() { | 81 function TestGeneratorObjectPrototype() { |
82 assertSame(Object.prototype, | 82 assertSame(Object.prototype, |
83 Object.getPrototypeOf(GeneratorObjectPrototype)); | 83 Object.getPrototypeOf(GeneratorObjectPrototype)); |
84 assertSame(GeneratorObjectPrototype, | 84 assertSame(GeneratorObjectPrototype, |
85 Object.getPrototypeOf((function*(){yield 1}).prototype)); | 85 Object.getPrototypeOf((function*(){yield 1}).prototype)); |
86 | 86 |
87 var expected_property_names = ["next", "send", "throw", "close", | 87 var expected_property_names = ["next", "send", "throw", "constructor"]; |
88 "constructor"]; | |
89 var found_property_names = | 88 var found_property_names = |
90 Object.getOwnPropertyNames(GeneratorObjectPrototype); | 89 Object.getOwnPropertyNames(GeneratorObjectPrototype); |
91 | 90 |
92 expected_property_names.sort(); | 91 expected_property_names.sort(); |
93 found_property_names.sort(); | 92 found_property_names.sort(); |
94 | 93 |
95 assertArrayEquals(expected_property_names, found_property_names); | 94 assertArrayEquals(expected_property_names, found_property_names); |
96 } | 95 } |
97 TestGeneratorObjectPrototype(); | 96 TestGeneratorObjectPrototype(); |
98 | 97 |
(...skipping 18 matching lines...) Expand all Loading... |
117 assertTrue((function*(){}).prototype !== (function*(){}).prototype); | 116 assertTrue((function*(){}).prototype !== (function*(){}).prototype); |
118 assertTrue((function*(){}).prototype !== g.prototype); | 117 assertTrue((function*(){}).prototype !== g.prototype); |
119 assertTrue(g.prototype instanceof GeneratorFunctionPrototype); | 118 assertTrue(g.prototype instanceof GeneratorFunctionPrototype); |
120 assertSame(GeneratorObjectPrototype, Object.getPrototypeOf(g.prototype)); | 119 assertSame(GeneratorObjectPrototype, Object.getPrototypeOf(g.prototype)); |
121 assertTrue(!(g.prototype instanceof Function)); | 120 assertTrue(!(g.prototype instanceof Function)); |
122 assertSame(typeof (g.prototype), "object"); | 121 assertSame(typeof (g.prototype), "object"); |
123 | 122 |
124 assertArrayEquals([], Object.getOwnPropertyNames(g.prototype)); | 123 assertArrayEquals([], Object.getOwnPropertyNames(g.prototype)); |
125 } | 124 } |
126 TestPerGeneratorPrototype(); | 125 TestPerGeneratorPrototype(); |
OLD | NEW |