Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(21)

Side by Side Diff: LayoutTests/fast/dom/custom/document-register-constructor.html

Issue 117313008: Update Custom Elements API to new names. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Update for forgotten tests. Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <script src="../../../resources/testharness.js"></script> 2 <script src="../../../resources/testharness.js"></script>
3 <script src="../../../resources/testharnessreport.js"></script> 3 <script src="../../../resources/testharnessreport.js"></script>
4 <body> 4 <body>
5 <script> 5 <script>
6 test(function () { 6 test(function () {
7 var proto = Object.create(HTMLElement.prototype); 7 var proto = Object.create(HTMLElement.prototype);
8 var ctor = document.register('x-a', {prototype: proto}); 8 var ctor = document.registerElement('x-a', {prototype: proto});
9 assert_true(ctor instanceof Function, 'constructor must be a function'); 9 assert_true(ctor instanceof Function, 'constructor must be a function');
10 assert_equals(typeof ctor, 'function', 'constructor must be a function insta nce'); 10 assert_equals(typeof ctor, 'function', 'constructor must be a function insta nce');
11 }, 'constructor type'); 11 }, 'constructor type');
12 12
13 test(function () { 13 test(function () {
14 var proto = Object.create(HTMLElement.prototype); 14 var proto = Object.create(HTMLElement.prototype);
15 var ctor = document.register('x-b', {prototype: proto}); 15 var ctor = document.registerElement('x-b', {prototype: proto});
16 16
17 // FIXME: These are not specified yet. Update these assertions 17 // FIXME: These are not specified yet. Update these assertions
18 // when the name is specified. 18 // when the name is specified.
19 assert_equals(ctor.name, 'x-b', 'the constructor\'s name should match the ty pe'); 19 assert_equals(ctor.name, 'x-b', 'the constructor\'s name should match the ty pe');
20 }, 'constructor name'); 20 }, 'constructor name');
21 21
22 test(function () { 22 test(function () {
23 var proto = Object.create(HTMLElement.prototype); 23 var proto = Object.create(HTMLElement.prototype);
24 var ctor = document.register('x-c', {prototype: proto}); 24 var ctor = document.registerElement('x-c', {prototype: proto});
25 assert_own_property(proto, 'constructor', 'document.register must configure the constructor property of the prototype'); 25 assert_own_property(proto, 'constructor', 'document.register must configure the constructor property of the prototype');
26 26
27 assert_equals(proto.constructor, ctor, 'the value of the constructor propert y must be the constructor function'); 27 assert_equals(proto.constructor, ctor, 'the value of the constructor propert y must be the constructor function');
28 28
29 var desc = Object.getOwnPropertyDescriptor(proto, 'constructor'); 29 var desc = Object.getOwnPropertyDescriptor(proto, 'constructor');
30 assert_true(desc.writable, 'constructor property must be writable'); 30 assert_true(desc.writable, 'constructor property must be writable');
31 assert_false(desc.enumerable, 'constructor property must be non-enumerable') ; 31 assert_false(desc.enumerable, 'constructor property must be non-enumerable') ;
32 assert_true(desc.configurable, 'constructor property must be configurable'); 32 assert_true(desc.configurable, 'constructor property must be configurable');
33 }, 'prototype "constructor" property'); 33 }, 'prototype "constructor" property');
34 34
35 test(function () { 35 test(function () {
36 var proto = Object.create(HTMLElement.prototype); 36 var proto = Object.create(HTMLElement.prototype);
37 var ctor = document.register('x-d', {prototype: proto}); 37 var ctor = document.registerElement('x-d', {prototype: proto});
38 assert_own_property(ctor, 'prototype', 'document.register must configure the prototype property of the constructor'); 38 assert_own_property(ctor, 'prototype', 'document.register must configure the prototype property of the constructor');
39 39
40 assert_equals(ctor.prototype, proto, 'the value of the prototype property mu st be the prototype object'); 40 assert_equals(ctor.prototype, proto, 'the value of the prototype property mu st be the prototype object');
41 41
42 var desc = Object.getOwnPropertyDescriptor(ctor, 'prototype'); 42 var desc = Object.getOwnPropertyDescriptor(ctor, 'prototype');
43 assert_false(desc.writable, 'prototype property must not be writable'); 43 assert_false(desc.writable, 'prototype property must not be writable');
44 assert_false(desc.enumerable, 'prototype property must be non-enumerable'); 44 assert_false(desc.enumerable, 'prototype property must be non-enumerable');
45 assert_false(desc.configurable, 'prototype property must not be configurable '); 45 assert_false(desc.configurable, 'prototype property must not be configurable ');
46 }, 'constructor "prototype" property'); 46 }, 'constructor "prototype" property');
47 </script> 47 </script>
48 48
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698