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

Unified Diff: test/call_test.ts

Issue 2225953002: Strip more unused features. (Closed) Base URL: git@github.com:dart-lang/js_facade_gen.git@master
Patch Set: Fix types Created 4 years, 4 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 | « package.json ('k') | test/declaration_test.ts » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/call_test.ts
diff --git a/test/call_test.ts b/test/call_test.ts
index 91b1518770e6a1fe41a145488412e9c77c8c46c2..d7136e93602b677094a3b4de24b89f4c5ab2f21a 100644
--- a/test/call_test.ts
+++ b/test/call_test.ts
@@ -1,62 +1,64 @@
/// <reference path="../typings/mocha/mocha.d.ts"/>
-import {expectTranslate, expectErroneousCode} from './test_support';
+import {expectTranslate} from './test_support';
describe('calls', () => {
it('translates destructuring parameters', () => {
- expectTranslate('function x({p = null, d = false} = {}) {}')
- .to.equal('x({p: null, d: false}) {}');
- expectErroneousCode('function x({a=false}={a:true})')
- .to.throw('cannot have both an inner and outer initializer');
- expectErroneousCode('function x({a=false}=true)')
- .to.throw('initializers for named parameters must be object literals');
- expectTranslate('class X { constructor() { super({p: 1}); } }').to.equal(`class X {
- X() : super(p: 1) {
- /* super call moved to initializer */;
- }
+ expectTranslate('function x({p = null, d = false} = {}) {}').to.equal(`@JS()
+external x(Object p_d /*{p = null, d = false}*/);`);
+ expectTranslate('function x({a=false}={a:true})').to.equal(`@JS()
+external x(Object a /*{a=false}*/);`);
+ expectTranslate('function x({a=false}=true)').to.equal(`@JS()
+external x(Object a /*{a=false}*/);`);
+ expectTranslate('class X { constructor() { super({p: 1}); } }').to.equal(`@JS()
+class X {
+ // @Ignore
+ X.fakeConstructor$();
+ external factory X();
}`);
});
- it('hacks last object literal parameters into named parameter', () => {
- expectTranslate('f(x, {a: 12, b: 4});').to.equal('f(x, a: 12, b: 4);');
- expectTranslate('f({a: 12});').to.equal('f(a: 12);');
- expectTranslate('f({"a": 12});').to.equal('f({"a": 12});');
- expectTranslate('new X(x, {a: 12, b: 4});').to.equal('new X(x, a: 12, b: 4);');
- expectTranslate('f(x, {});').to.equal('f(x, {});');
+ it('suppress calls with literal parameters', () => {
+ expectTranslate('f(x, {a: 12, b: 4});').to.equal('');
+ expectTranslate('f({a: 12});').to.equal('');
+ expectTranslate('f({"a": 12});').to.equal('');
+ expectTranslate('new X(x, {a: 12, b: 4});').to.equal('');
+ expectTranslate('f(x, {});').to.equal('');
});
- it('translates calls', () => {
- expectTranslate('foo();').to.equal('foo();');
- expectTranslate('foo(1, 2);').to.equal('foo(1, 2);');
+ it('suppress calls', () => {
+ expectTranslate('foo();').to.equal('');
+ expectTranslate('foo(1, 2);').to.equal('');
});
- it('translates new calls', () => {
- expectTranslate('new Foo();').to.equal('new Foo();');
- expectTranslate('new Foo(1, 2);').to.equal('new Foo(1, 2);');
- expectTranslate('new Foo<number, string>(1, 2);').to.equal('new Foo<num, String>(1, 2);');
+ it('suppress new calls', () => {
+ expectTranslate('new Foo();').to.equal('');
+ expectTranslate('new Foo(1, 2);').to.equal('');
+ expectTranslate('new Foo<number, string>(1, 2);').to.equal('');
});
- it('supports generic type parameters',
- () => { expectTranslate('var s = foo<string>();').to.equal('var s = foo/*< String >*/();'); });
- it('translates "super()" constructor calls', () => {
- expectTranslate('class X { constructor() { super(1); } }').to.equal(`class X {
- X() : super(1) {
- /* super call moved to initializer */;
- }
+ it('suppress "super()" constructor calls', () => {
+ expectTranslate('class X { constructor() { super(1); } }').to.equal(`@JS()
+class X {
+ // @Ignore
+ X.fakeConstructor$();
+ external factory X();
}`);
- expectErroneousCode('class X { constructor() { if (y) super(1, 2); } }')
- .to.throw('super calls must be immediate children of their constructors');
- expectTranslate('class X { constructor() { a(); super(1); b(); } }').to.equal(`class X {
- X() : super(1) {
- a();
- /* super call moved to initializer */
- ;
- b();
- }
+ expectTranslate('class X { constructor() { if (y) super(1, 2); } }').to.equal(`@JS()
+class X {
+ // @Ignore
+ X.fakeConstructor$();
+ external factory X();
+}`);
+ expectTranslate('class X { constructor() { a(); super(1); b(); } }').to.equal(`@JS()
+class X {
+ // @Ignore
+ X.fakeConstructor$();
+ external factory X();
}`);
});
- it('translates "super.x()" super method calls', () => {
- expectTranslate('class X { y() { super.z(1); } }').to.equal(`class X {
- y() {
- super.z(1);
- }
+ it('ignore "super.x()" super method calls', () => {
+ expectTranslate('class X { y() { super.z(1); } }').to.equal(`@JS()
+class X {
+ // @Ignore
+ X.fakeConstructor$();
+ external y();
}`);
});
- it('transpiles new calls without arguments',
- () => { expectTranslate('new Foo;').to.equal('new Foo();'); });
+ it('suppress new calls without arguments', () => { expectTranslate('new Foo;').to.equal(''); });
});
« no previous file with comments | « package.json ('k') | test/declaration_test.ts » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698