From 2820a6b9e8b8acfdb50410de14b807f0c4922516 Mon Sep 17 00:00:00 2001 From: Matan Lurey Date: Wed, 4 Jan 2017 21:22:40 -0500 Subject: [PATCH 1/2] Cover another 2 test cases --- test/builders/expression_test.dart | 9 +++++ test/builders/method_test.dart | 53 ++++++++++++++++++++---------- 2 files changed, 44 insertions(+), 18 deletions(-) diff --git a/test/builders/expression_test.dart b/test/builders/expression_test.dart index 36f477e..a947b30 100644 --- a/test/builders/expression_test.dart +++ b/test/builders/expression_test.dart @@ -295,6 +295,15 @@ void main() { ); }); + test('should scope on newInstance', () { + expect( + reference('Foo', 'package:foo/foo.dart').newInstance([]).asReturn(), + equalsSource(r''' + return new _i1.Foo(); + ''', scope: new Scope()), + ); + }); + test('should emit await', () { expect( reference('foo').asAwait(), diff --git a/test/builders/method_test.dart b/test/builders/method_test.dart index 5ff6c7a..3e7ed77 100644 --- a/test/builders/method_test.dart +++ b/test/builders/method_test.dart @@ -202,7 +202,6 @@ void main() { setUp(() { closure = new MethodBuilder.closure( returns: literal(false).or(reference('defaultTo')), - returnType: lib$core.bool, )..addPositional(parameter('defaultTo', [lib$core.bool])); }); @@ -215,24 +214,42 @@ void main() { (bool defaultTo) => false || defaultTo '''), ); + }); + + test('should treat closure as expression', () { + expect( + list([true, false]).invoke('where', [closure]), + equalsSource( + '[true, false].where((bool defaultTo) => false || defaultTo)', + ), + ); + }); - test('should treat closure as expression', () { - expect( - list([true, false]).invoke('where', [closure]), - equalsSource( - '[true, false].where((bool defaultTo) => false || defaultTo)', - ), - ); - }); - - test('should emit a closure as a function in a library', () { - final library = new LibraryBuilder(); - library.addMember(closure); - expect( - library, - equalsSource('(bool defaultTo) => false || defaultTo;'), - ); - }); + test('should emit a closure as a function in a library', () { + final library = new LibraryBuilder(); + library.addMember(closure); + print(library.buildAst().toSource()); + expect( + library, + equalsSource('(bool defaultTo) => false || defaultTo;'), + ); + }); + + test('should emit a closure with a statement body', () { + expect( + (new MethodBuilder.closure() + ..addPositional(new ParameterBuilder('value')) + ..addStatement(reference('value').invoke( + 'join', + [literal(' - ')], + ).asAssign('title'))).asStatement(), + equalsSource( + r''' + (value) { + title = value.join(' - '); + }; + '''), + ); }); }); } From 9fc8e74212170af9ccdd5213e3daddefa4282af1 Mon Sep 17 00:00:00 2001 From: Matan Lurey Date: Wed, 4 Jan 2017 21:23:09 -0500 Subject: [PATCH 2/2] Remove debug statement --- test/builders/expression_test.dart | 6 ++++-- test/builders/method_test.dart | 15 +++++++-------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/test/builders/expression_test.dart b/test/builders/expression_test.dart index a947b30..0510f20 100644 --- a/test/builders/expression_test.dart +++ b/test/builders/expression_test.dart @@ -298,9 +298,11 @@ void main() { test('should scope on newInstance', () { expect( reference('Foo', 'package:foo/foo.dart').newInstance([]).asReturn(), - equalsSource(r''' + equalsSource( + r''' return new _i1.Foo(); - ''', scope: new Scope()), + ''', + scope: new Scope()), ); }); diff --git a/test/builders/method_test.dart b/test/builders/method_test.dart index 3e7ed77..8a6c7b9 100644 --- a/test/builders/method_test.dart +++ b/test/builders/method_test.dart @@ -228,7 +228,6 @@ void main() { test('should emit a closure as a function in a library', () { final library = new LibraryBuilder(); library.addMember(closure); - print(library.buildAst().toSource()); expect( library, equalsSource('(bool defaultTo) => false || defaultTo;'), @@ -238,13 +237,13 @@ void main() { test('should emit a closure with a statement body', () { expect( (new MethodBuilder.closure() - ..addPositional(new ParameterBuilder('value')) - ..addStatement(reference('value').invoke( - 'join', - [literal(' - ')], - ).asAssign('title'))).asStatement(), - equalsSource( - r''' + ..addPositional(new ParameterBuilder('value')) + ..addStatement(reference('value').invoke( + 'join', + [literal(' - ')], + ).asAssign('title'))) + .asStatement(), + equalsSource(r''' (value) { title = value.join(' - '); };