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

Unified Diff: test/mjsunit/harmony/function-name.js

Issue 2096933002: Remove all harmony runtime flags which shipped in M51 (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Review comments Created 4 years, 6 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « test/mjsunit/harmony/arraybuffer-species.js ('k') | test/mjsunit/harmony/instanceof-es6.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/mjsunit/harmony/function-name.js
diff --git a/test/mjsunit/harmony/function-name.js b/test/mjsunit/harmony/function-name.js
deleted file mode 100644
index 66a69e0f168e83ac77ae96e4d65c0f816500527d..0000000000000000000000000000000000000000
--- a/test/mjsunit/harmony/function-name.js
+++ /dev/null
@@ -1,372 +0,0 @@
-// Copyright 2015 the V8 project authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-//
-// Flags: --harmony-function-name
-
-(function testVariableDeclarationsFunction() {
- 'use strict';
- var a = function(){};
- assertEquals('a', a.name);
- let b = () => {};
- assertEquals('b', b.name);
- const c = ((function(){}));
- assertEquals('c', c.name);
-
- var x = function(){}, y = () => {}, z = function withName() {};
- assertEquals('x', x.name);
- assertEquals('y', y.name);
- assertEquals('withName', z.name);
-})();
-
-(function testVariableDeclarationsClass() {
- 'use strict';
- var a = class {};
- assertEquals('a', a.name);
- let b = ((class {}));
- assertEquals('b', b.name);
- // Should not overwrite name property.
- const c = class { static name() { } }
- assertEquals('function', typeof c.name);
-
- var x = class {}, y = class NamedClass {};
- assertEquals('x', x.name);
- assertEquals('NamedClass', y.name);
-})();
-
-(function testObjectProperties() {
- 'use strict';
- var obj = {
- a: function() {},
- b: () => {},
- c() { },
- get d() { },
- set d(val) { },
- x: function withName() { },
- y: class { },
- z: class ClassName { },
- 42: function() {},
- 4.2: function() {},
- __proto__: function() {},
- };
-
- assertEquals('a', obj.a.name);
- assertEquals('b', obj.b.name);
- assertEquals('c', obj.c.name);
- var dDescriptor = Object.getOwnPropertyDescriptor(obj, 'd');
- assertEquals('get d', dDescriptor.get.name);
- assertEquals('set d', dDescriptor.set.name);
- assertEquals('withName', obj.x.name);
- assertEquals('y', obj.y.name);
- assertEquals('ClassName', obj.z.name);
- assertEquals('42', obj[42].name);
- assertEquals('4.2', obj[4.2].name);
- assertEquals('', obj.__proto__.name);
-})();
-
-(function testClassProperties() {
- 'use strict';
- class C {
- a() { }
- static b() { }
- get c() { }
- set c(val) { }
- 42() { }
- static 43() { }
- get 44() { }
- set 44(val) { }
- };
-
- assertEquals('a', C.prototype.a.name);
- assertEquals('b', C.b.name);
- var descriptor = Object.getOwnPropertyDescriptor(C.prototype, 'c');
- assertEquals('get c', descriptor.get.name);
- assertEquals('set c', descriptor.set.name);
- assertEquals('42', C.prototype[42].name);
- assertEquals('43', C[43].name);
- var descriptor = Object.getOwnPropertyDescriptor(C.prototype, '44');
- assertEquals('get 44', descriptor.get.name);
- assertEquals('set 44', descriptor.set.name);
-})();
-
-(function testComputedProperties() {
- 'use strict';
- var a = 'a';
- var b = 'b';
- var sym1 = Symbol('1');
- var sym2 = Symbol('2');
- var sym3 = Symbol('3');
- var symNoDescription = Symbol();
- var obj = {
- [a]: function() {},
- [sym1]: function() {},
- [sym2]: function withName() {},
- [symNoDescription]: function() {},
-
- get [sym3]() {},
- set [b](val) {},
- };
-
- assertEquals('a', obj[a].name);
- assertEquals('[1]', obj[sym1].name);
- assertEquals('withName', obj[sym2].name);
- assertEquals('', obj[symNoDescription].name);
-
- assertEquals('get [3]', Object.getOwnPropertyDescriptor(obj, sym3).get.name);
- assertEquals('set b', Object.getOwnPropertyDescriptor(obj, 'b').set.name);
-
- var objMethods = {
- [a]() {},
- [sym1]() {},
- [symNoDescription]: function() {},
- };
-
- assertEquals('a', objMethods[a].name);
- assertEquals('[1]', objMethods[sym1].name);
- assertEquals('', objMethods[symNoDescription].name);
-
- class C {
- [a]() { }
- [sym1]() { }
- static [sym2]() { }
- [symNoDescription]() { }
-
- get [sym3]() { }
- static set [b](val) { }
- }
-
- assertEquals('a', C.prototype[a].name);
- assertEquals('[1]', C.prototype[sym1].name);
- assertEquals('[2]', C[sym2].name);
- assertEquals('', C.prototype[symNoDescription].name);
-
- assertEquals('get [3]', Object.getOwnPropertyDescriptor(C.prototype, sym3).get.name);
- assertEquals('set b', Object.getOwnPropertyDescriptor(C, 'b').set.name);
-})();
-
-
-(function testAssignment() {
- var basicFn, arrowFn, generatorFn, classLit;
-
- basicFn = function() { return true; };
- assertEquals('basicFn', basicFn.name);
- var basicFn2 = basicFn;
- assertEquals('basicFn', basicFn2.name);
- basicFn = function functionWithName() { };
- assertEquals("functionWithName", basicFn.name);
-
- arrowFn = x => x;
- assertEquals('arrowFn', arrowFn.name);
- var arrowFn2 = arrowFn;
- assertEquals('arrowFn', arrowFn2.name);
-
- generatorFn = function*() { yield true; };
- assertEquals('generatorFn', generatorFn.name);
- var generatorFn2 = generatorFn;
- assertEquals('generatorFn', generatorFn2.name);
- generatorFn = function* generatorWithName() { };
- assertEquals("generatorWithName", generatorFn.name);
-
- classLit = class { constructor() {} };
- assertEquals('classLit', classLit.name);
- var classLit2 = classLit;
- assertEquals('classLit', classLit2.name);
- classLit = class classWithName { constructor() {} };
- assertEquals('classWithName', classLit.name);
- classLit = class { constructor() {} static name() {} };
- assertEquals('function', typeof classLit.name);
- classLit = class { constructor() {} static get name() { return true; } };
- assertTrue(classLit.name);
- classLit = class { constructor() {} static ['name']() {} };
- assertEquals('function', typeof classLit.name);
- classLit = class { constructor() {} static get ['name']() { return true; } };
- assertTrue(classLit.name);
-})();
-
-(function testObjectBindingPattern() {
- var {
- a = function() {},
- b = () => {},
- x = function withName() { },
- y = class { },
- z = class ClassName { },
- q = class { static name() { return 42 } },
- foo: bar = function() {},
- inParens = (() => {}),
- inManyParens = ((((() => {})))),
- } = {};
- assertEquals('a', a.name);
- assertEquals('b', b.name);
- assertEquals('withName', x.name);
- assertEquals('y', y.name);
- assertEquals('ClassName', z.name);
- assertEquals('function', typeof q.name);
- assertEquals('bar', bar.name);
- assertEquals('inParens', inParens.name)
- assertEquals('inManyParens', inManyParens.name)
-})();
-
-(function testArrayBindingPattern() {
- var [
- a = function() {},
- b = () => {},
- x = function withName() { },
- y = class { },
- z = class ClassName { },
- q = class { static name() { return 42 } },
- inParens = (() => {}),
- inManyParens = ((((() => {})))),
- ] = [];
- assertEquals('a', a.name);
- assertEquals('b', b.name);
- assertEquals('withName', x.name);
- assertEquals('y', y.name);
- assertEquals('ClassName', z.name);
- assertEquals('function', typeof q.name);
- assertEquals('inParens', inParens.name)
- assertEquals('inManyParens', inManyParens.name)
-})();
-
-(function testObjectAssignmentPattern() {
- var a, b, x, y, z, q;
- ({
- a = function() {},
- b = () => {},
- x = function withName() { },
- y = class { },
- z = class ClassName { },
- q = class { static name() { return 42 } },
- foo: bar = function() {},
- inParens = (() => {}),
- inManyParens = ((((() => {})))),
- } = {});
- assertEquals('a', a.name);
- assertEquals('b', b.name);
- assertEquals('withName', x.name);
- assertEquals('y', y.name);
- assertEquals('ClassName', z.name);
- assertEquals('function', typeof q.name);
- assertEquals('bar', bar.name);
- assertEquals('inParens', inParens.name)
- assertEquals('inManyParens', inManyParens.name)
-})();
-
-(function testArrayAssignmentPattern() {
- var a, b, x, y, z, q;
- [
- a = function() {},
- b = () => {},
- x = function withName() { },
- y = class { },
- z = class ClassName { },
- q = class { static name() { return 42 } },
- inParens = (() => {}),
- inManyParens = ((((() => {})))),
- ] = [];
- assertEquals('a', a.name);
- assertEquals('b', b.name);
- assertEquals('withName', x.name);
- assertEquals('y', y.name);
- assertEquals('ClassName', z.name);
- assertEquals('function', typeof q.name);
- assertEquals('inParens', inParens.name)
- assertEquals('inManyParens', inManyParens.name)
-})();
-
-(function testParameterDestructuring() {
- (function({ a = function() {},
- b = () => {},
- x = function withName() { },
- y = class { },
- z = class ClassName { },
- q = class { static name() { return 42 } },
- foo: bar = function() {},
- inParens = (() => {}),
- inManyParens = ((((() => {})))) }) {
- assertEquals('a', a.name);
- assertEquals('b', b.name);
- assertEquals('withName', x.name);
- assertEquals('y', y.name);
- assertEquals('ClassName', z.name);
- assertEquals('function', typeof q.name);
- assertEquals('bar', bar.name);
- assertEquals('inParens', inParens.name)
- assertEquals('inManyParens', inManyParens.name)
- })({});
-
- (function([ a = function() {},
- b = () => {},
- x = function withName() { },
- y = class { },
- z = class ClassName { },
- q = class { static name() { return 42 } },
- inParens = (() => {}),
- inManyParens = ((((() => {})))) ]) {
- assertEquals('a', a.name);
- assertEquals('b', b.name);
- assertEquals('withName', x.name);
- assertEquals('y', y.name);
- assertEquals('ClassName', z.name);
- assertEquals('function', typeof q.name);
- assertEquals('inParens', inParens.name)
- assertEquals('inManyParens', inManyParens.name)
- })([]);
-})();
-
-(function testDefaultParameters() {
- (function(a = function() {},
- b = () => {},
- x = function withName() { },
- y = class { },
- z = class ClassName { },
- q = class { static name() { return 42 } },
- inParens = (() => {}),
- inManyParens = ((((() => {}))))) {
- assertEquals('a', a.name);
- assertEquals('b', b.name);
- assertEquals('withName', x.name);
- assertEquals('y', y.name);
- assertEquals('ClassName', z.name);
- assertEquals('function', typeof q.name);
- assertEquals('inParens', inParens.name)
- assertEquals('inManyParens', inManyParens.name)
- })();
-})();
-
-(function testComputedNameNotShared() {
- function makeClass(propName) {
- return class {
- static [propName]() {}
- }
- }
-
- var sym1 = Symbol('1');
- var sym2 = Symbol('2');
- var class1 = makeClass(sym1);
- assertEquals('[1]', class1[sym1].name);
- var class2 = makeClass(sym2);
- assertEquals('[2]', class2[sym2].name);
- assertEquals('[1]', class1[sym1].name);
-})();
-
-
-(function testComputedNamesOnlyAppliedSyntactically() {
- function factory() { return () => {}; }
-
- var obj = { ['foo']: factory() };
- assertEquals('', obj.foo.name);
-})();
-
-
-(function testNameNotReflectedInToString() {
- var f = function() {};
- var g = function*() {};
- var obj = {
- ['h']: function() {},
- i: () => {}
- };
- assertEquals('function () {}', f.toString());
- assertEquals('function* () {}', g.toString());
- assertEquals('function () {}', obj.h.toString());
- assertEquals('() => {}', obj.i.toString());
-})();
« no previous file with comments | « test/mjsunit/harmony/arraybuffer-species.js ('k') | test/mjsunit/harmony/instanceof-es6.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698