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

Side by Side Diff: pkg/analyzer2dart/test/sexpr_test.dart

Issue 756383004: Refactored treatment of closure variables in dart2js CPS. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Comments Created 6 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 | Annotate | Revision Log
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 4
5 /// Unittest test of the CPS ir generated by the analyzer2dart compiler. 5 /// Unittest test of the CPS ir generated by the analyzer2dart compiler.
6 6
7 import 'mock_sdk.dart'; 7 import 'mock_sdk.dart';
8 import 'package:analyzer/file_system/memory_file_system.dart'; 8 import 'package:analyzer/file_system/memory_file_system.dart';
9 import 'package:analyzer/src/generated/element.dart'; 9 import 'package:analyzer/src/generated/element.dart';
10 import 'package:analyzer/src/generated/sdk.dart'; 10 import 'package:analyzer/src/generated/sdk.dart';
11 import 'package:analyzer/src/generated/source.dart'; 11 import 'package:analyzer/src/generated/source.dart';
12 import 'package:compiler/src/cps_ir/cps_ir_nodes_sexpr.dart'; 12 import 'package:compiler/src/cps_ir/cps_ir_nodes_sexpr.dart';
13 import 'package:compiler/src/elements/elements.dart' as dart2js; 13 import 'package:compiler/src/elements/elements.dart' as dart2js;
14 import 'package:unittest/unittest.dart'; 14 import 'package:unittest/unittest.dart';
15 15
16 import '../lib/src/closed_world.dart'; 16 import '../lib/src/closed_world.dart';
17 import '../lib/src/driver.dart'; 17 import '../lib/src/driver.dart';
18 import '../lib/src/converted_world.dart'; 18 import '../lib/src/converted_world.dart';
19 import 'output_helper.dart'; 19 import 'output_helper.dart';
20 import 'test_helper.dart'; 20 import 'test_helper.dart';
21 import 'sexpr_data.dart'; 21 import 'sexpr_data.dart';
22 22
23 main() { 23 main() {
24 performTests(TEST_DATA, unittester, checkResult); 24 performTests(TEST_DATA, unittester, checkResult);
25 } 25 }
26 26
27 checkResult(TestSpec result) { 27 checkResult(TestSpec result) {
28 if (result.skipInAnalyzerFrontend) return;
28 String input = result.input.trim(); 29 String input = result.input.trim();
29 CollectingOutputProvider outputProvider = new CollectingOutputProvider(); 30 CollectingOutputProvider outputProvider = new CollectingOutputProvider();
30 MemoryResourceProvider provider = new MemoryResourceProvider(); 31 MemoryResourceProvider provider = new MemoryResourceProvider();
31 DartSdk sdk = new MockSdk(); 32 DartSdk sdk = new MockSdk();
32 Driver driver = new Driver(provider, sdk, outputProvider); 33 Driver driver = new Driver(provider, sdk, outputProvider);
33 String rootFile = '/root.dart'; 34 String rootFile = '/root.dart';
34 provider.newFile(rootFile, input); 35 provider.newFile(rootFile, input);
35 Source rootSource = driver.setRoot(rootFile); 36 Source rootSource = driver.setRoot(rootFile);
36 FunctionElement entryPoint = driver.resolveEntryPoint(rootSource); 37 FunctionElement entryPoint = driver.resolveEntryPoint(rootSource);
37 ClosedWorld world = driver.computeWorld(entryPoint); 38 ClosedWorld world = driver.computeWorld(entryPoint);
(...skipping 18 matching lines...) Expand all
56 convertedWorld.resolvedElements.forEach((dart2js.Element element) { 57 convertedWorld.resolvedElements.forEach((dart2js.Element element) {
57 if (element.name == elementName && 58 if (element.name == elementName &&
58 element.library == mainLibrary) { 59 element.library == mainLibrary) {
59 checkOutput(element, output); 60 checkOutput(element, output);
60 } 61 }
61 }); 62 });
62 }); 63 });
63 } 64 }
64 } 65 }
65 66
OLDNEW
« no previous file with comments | « pkg/analyzer2dart/test/sexpr_data.dart ('k') | pkg/compiler/lib/src/cps_ir/constant_propagation.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698