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

Side by Side Diff: third_party/WebKit/LayoutTests/imported/web-platform-tests/resources/idlharness.js

Issue 1515563002: Import web-platform-tests@5dbe45af3ad3a933c03187c72f1c12cbe2877703 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 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
OLDNEW
1 /* 1 /*
2 Distributed under both the W3C Test Suite License [1] and the W3C 2 Distributed under both the W3C Test Suite License [1] and the W3C
3 3-clause BSD License [2]. To contribute to a W3C Test Suite, see the 3 3-clause BSD License [2]. To contribute to a W3C Test Suite, see the
4 policies and contribution forms [3]. 4 policies and contribution forms [3].
5 5
6 [1] http://www.w3.org/Consortium/Legal/2008/04-testsuite-license 6 [1] http://www.w3.org/Consortium/Legal/2008/04-testsuite-license
7 [2] http://www.w3.org/Consortium/Legal/2008/03-bsd-license 7 [2] http://www.w3.org/Consortium/Legal/2008/03-bsd-license
8 [3] http://www.w3.org/2004/10/27-testcases 8 [3] http://www.w3.org/2004/10/27-testcases
9 */ 9 */
10 10
(...skipping 754 matching lines...) Expand 10 before | Expand all | Expand 10 after
765 assert_false(desc.enumerable, this.name + ".length is enumerable"); 765 assert_false(desc.enumerable, this.name + ".length is enumerable");
766 assert_true(desc.configurable, this.name + ".length is not configura ble"); 766 assert_true(desc.configurable, this.name + ".length is not configura ble");
767 767
768 var constructors = this.extAttrs 768 var constructors = this.extAttrs
769 .filter(function(attr) { return attr.name == "Constructor"; }); 769 .filter(function(attr) { return attr.name == "Constructor"; });
770 var expected_length = minOverloadLength(constructors); 770 var expected_length = minOverloadLength(constructors);
771 assert_equals(self[this.name].length, expected_length, "wrong value for " + this.name + ".length"); 771 assert_equals(self[this.name].length, expected_length, "wrong value for " + this.name + ".length");
772 }.bind(this), this.name + " interface object length"); 772 }.bind(this), this.name + " interface object length");
773 } 773 }
774 774
775 if (!this.is_callback() || this.has_constants()) {
776 test(function() {
777 // This function tests WebIDL as of 2015-11-17.
778 // https://heycam.github.io/webidl/#interface-object
779
780 assert_own_property(self, this.name,
781 "self does not have own property " + format_valu e(this.name));
782
783 // "All interface objects must have a property named “name” with
784 // attributes { [[Writable]]: false, [[Enumerable]]: false,
785 // [[Configurable]]: true } whose value is the identifier of the
786 // corresponding interface."
787
788 assert_own_property(self[this.name], "name");
789 var desc = Object.getOwnPropertyDescriptor(self[this.name], "name");
790 assert_false("get" in desc, this.name + ".name has getter");
791 assert_false("set" in desc, this.name + ".name has setter");
792 assert_false(desc.writable, this.name + ".name is writable");
793 assert_false(desc.enumerable, this.name + ".name is enumerable");
794 assert_true(desc.configurable, this.name + ".name is not configurabl e");
795 assert_equals(self[this.name].name, this.name, "wrong value for " + this.name + ".name");
796 }.bind(this), this.name + " interface object name");
797 }
798
775 // TODO: Test named constructors if I find any interfaces that have them. 799 // TODO: Test named constructors if I find any interfaces that have them.
776 800
777 test(function() 801 test(function()
778 { 802 {
779 // This function tests WebIDL as of 2015-01-21. 803 // This function tests WebIDL as of 2015-01-21.
780 // https://heycam.github.io/webidl/#interface-object 804 // https://heycam.github.io/webidl/#interface-object
781 805
782 if (this.is_callback() && !this.has_constants()) { 806 if (this.is_callback() && !this.has_constants()) {
783 return; 807 return;
784 } 808 }
(...skipping 907 matching lines...) Expand 10 before | Expand all | Expand 10 after
1692 /** An array of values produced by the "typedef" production. */ 1716 /** An array of values produced by the "typedef" production. */
1693 this.values = obj.values; 1717 this.values = obj.values;
1694 1718
1695 } 1719 }
1696 //@} 1720 //@}
1697 1721
1698 IdlTypedef.prototype = Object.create(IdlObject.prototype); 1722 IdlTypedef.prototype = Object.create(IdlObject.prototype);
1699 1723
1700 }()); 1724 }());
1701 // vim: set expandtab shiftwidth=4 tabstop=4 foldmarker=@{,@} foldmethod=marker: 1725 // vim: set expandtab shiftwidth=4 tabstop=4 foldmarker=@{,@} foldmethod=marker:
OLDNEW
« no previous file with comments | « third_party/WebKit/LayoutTests/imported/web-platform-tests/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698