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

Side by Side Diff: tests/compiler/dart2js/js_backend_cps_ir_test.dart

Issue 722163002: Add support for static calls to the cps pipeline code generator. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Add test Created 6 years, 1 month 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
« no previous file with comments | « pkg/compiler/lib/src/ssa/codegen.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 // VMOptions=-DUSE_CPS_IR=true 4 // VMOptions=-DUSE_CPS_IR=true
5 5
6 // Test that the CPS IR code generator is able to compile the provided 6 // Test that the CPS IR code generator is able to compile the provided
7 // example programs. 7 // example programs.
8 8
9 import 'package:async_helper/async_helper.dart'; 9 import 'package:async_helper/async_helper.dart';
10 import 'package:expect/expect.dart'; 10 import 'package:expect/expect.dart';
11 import 'package:compiler/src/apiimpl.dart' 11 import 'package:compiler/src/apiimpl.dart'
12 show Compiler; 12 show Compiler;
13 import 'memory_compiler.dart'; 13 import 'memory_compiler.dart';
14 14
15 const String TEST_MAIN_FILE = 'test.dart'; 15 const String TEST_MAIN_FILE = 'test.dart';
16 16
17 /// The list of tests to run. 17 /// The list of tests to run.
18 const List<String> RAW_TESTS = const [ 18 const List<String> RAW_TESTS = const [
19 """
20 foo() { return 42; }
21 main() { return foo(); }
22 """,
19 "main() {}", 23 "main() {}",
20 "main() { return 42; }", 24 "main() { return 42; }",
21 ]; 25 ];
22 26
23 String formatTest(Map test) { 27 String formatTest(Map test) {
24 return test[TEST_MAIN_FILE]; 28 return test[TEST_MAIN_FILE];
25 } 29 }
26 30
27 main() { 31 main() {
28 Expect.isTrue(const bool.fromEnvironment("USE_CPS_IR")); 32 Expect.isTrue(const bool.fromEnvironment("USE_CPS_IR"));
29 33
30 Iterable<Map> tests = 34 Iterable<Map> tests =
31 RAW_TESTS.map((String text) => {TEST_MAIN_FILE: text}); 35 RAW_TESTS.map((String text) => {TEST_MAIN_FILE: text});
32 36
33 for (Map test in tests) { 37 for (Map test in tests) {
34 asyncTest(() { 38 asyncTest(() {
35 Compiler compiler = compilerFor(test); 39 Compiler compiler = compilerFor(test);
36 Uri uri = Uri.parse('memory:$TEST_MAIN_FILE'); 40 Uri uri = Uri.parse('memory:$TEST_MAIN_FILE');
37 return compiler.run(uri).then((_) { 41 return compiler.run(uri).then((_) {
38 Expect.isNotNull(compiler.assembledCode); 42 Expect.isNotNull(compiler.assembledCode);
39 }).catchError((e) { 43 }).catchError((e) {
40 Expect.fail('The following test failed to compile:\n' 44 Expect.fail('The following test failed to compile:\n'
41 '${formatTest(test)}'); 45 '${formatTest(test)}');
42 }); 46 });
43 }); 47 });
44 } 48 }
45 } 49 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/ssa/codegen.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698