| OLD | NEW | 
|---|
| 1 // Copyright (c) 2015, the Dart project authors.  Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 @TestOn("vm") | 5 @TestOn("vm") | 
| 6 | 6 | 
| 7 import 'dart:io'; | 7 import 'dart:io'; | 
| 8 | 8 | 
| 9 import 'package:path/path.dart' as p; | 9 import 'package:path/path.dart' as p; | 
| 10 import 'package:test/src/backend/state.dart'; | 10 import 'package:test/src/backend/state.dart'; | 
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 47     return _loader.close(); | 47     return _loader.close(); | 
| 48   }); | 48   }); | 
| 49 | 49 | 
| 50   group(".loadFile()", () { | 50   group(".loadFile()", () { | 
| 51     var suite; | 51     var suite; | 
| 52     setUp(() async { | 52     setUp(() async { | 
| 53       var suites = await _loader.loadFile(p.join(_sandbox, 'a_test.dart')) | 53       var suites = await _loader.loadFile(p.join(_sandbox, 'a_test.dart')) | 
| 54           .toList(); | 54           .toList(); | 
| 55 | 55 | 
| 56       expect(suites, hasLength(1)); | 56       expect(suites, hasLength(1)); | 
| 57       suite = suites.first; | 57       var loadSuite = suites.first; | 
|  | 58       suite = await loadSuite.getSuite(); | 
| 58     }); | 59     }); | 
| 59 | 60 | 
| 60     test("returns a suite with the file path and platform", () { | 61     test("returns a suite with the file path and platform", () { | 
| 61       expect(suite.path, equals(p.join(_sandbox, 'a_test.dart'))); | 62       expect(suite.path, equals(p.join(_sandbox, 'a_test.dart'))); | 
| 62       expect(suite.platform, equals('Chrome')); | 63       expect(suite.platform, equals('Chrome')); | 
| 63     }); | 64     }); | 
| 64 | 65 | 
| 65     test("returns tests with the correct names", () { | 66     test("returns tests with the correct names", () { | 
| 66       expect(suite.tests, hasLength(3)); | 67       expect(suite.tests, hasLength(3)); | 
| 67       expect(suite.tests[0].name, equals("success")); | 68       expect(suite.tests[0].name, equals("success")); | 
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 106         test("error", () => throw 'oh no'); | 107         test("error", () => throw 'oh no'); | 
| 107       }); | 108       }); | 
| 108     }); | 109     }); | 
| 109   }); | 110   }); | 
| 110 } | 111 } | 
| 111 """); | 112 """); | 
| 112 | 113 | 
| 113     var suites = await _loader.loadFile(p.join(_sandbox, 'a_test.dart')) | 114     var suites = await _loader.loadFile(p.join(_sandbox, 'a_test.dart')) | 
| 114         .toList(); | 115         .toList(); | 
| 115     expect(suites, hasLength(1)); | 116     expect(suites, hasLength(1)); | 
| 116     var suite = suites.first; | 117     var loadSuite = suites.first; | 
|  | 118     var suite = await loadSuite.getSuite(); | 
| 117     expect(suite.tests, hasLength(3)); | 119     expect(suite.tests, hasLength(3)); | 
| 118     expect(suite.tests[0].name, equals("success")); | 120     expect(suite.tests[0].name, equals("success")); | 
| 119     expect(suite.tests[1].name, equals("failure")); | 121     expect(suite.tests[1].name, equals("failure")); | 
| 120     expect(suite.tests[2].name, equals("error")); | 122     expect(suite.tests[2].name, equals("error")); | 
| 121   }); | 123   }); | 
| 122 | 124 | 
| 123   test("loads a suite both in the browser and the VM", () async { | 125   test("loads a suite both in the browser and the VM", () async { | 
| 124     var loader = new Loader([TestPlatform.vm, TestPlatform.chrome], | 126     var loader = new Loader([TestPlatform.vm, TestPlatform.chrome], | 
| 125         root: _sandbox, | 127         root: _sandbox, | 
| 126         packageRoot: p.join(packageDir, 'packages')); | 128         packageRoot: p.join(packageDir, 'packages')); | 
| 127     var path = p.join(_sandbox, 'a_test.dart'); | 129     var path = p.join(_sandbox, 'a_test.dart'); | 
| 128 | 130 | 
| 129     try { | 131     try { | 
| 130       var suites = await loader.loadFile(path).toList(); | 132       var suites = await loader.loadFile(path) | 
|  | 133           .asyncMap((loadSuite) => loadSuite.getSuite()).toList(); | 
| 131       expect(suites[0].platform, equals('VM')); | 134       expect(suites[0].platform, equals('VM')); | 
| 132       expect(suites[0].path, equals(path)); | 135       expect(suites[0].path, equals(path)); | 
| 133       expect(suites[1].platform, equals('Chrome')); | 136       expect(suites[1].platform, equals('Chrome')); | 
| 134       expect(suites[1].path, equals(path)); | 137       expect(suites[1].path, equals(path)); | 
| 135 | 138 | 
| 136       for (var suite in suites) { | 139       for (var suite in suites) { | 
| 137         expect(suite.tests, hasLength(3)); | 140         expect(suite.tests, hasLength(3)); | 
| 138         expect(suite.tests[0].name, equals("success")); | 141         expect(suite.tests[0].name, equals("success")); | 
| 139         expect(suite.tests[1].name, equals("failure")); | 142         expect(suite.tests[1].name, equals("failure")); | 
| 140         expect(suite.tests[2].name, equals("error")); | 143         expect(suite.tests[2].name, equals("error")); | 
| 141       } | 144       } | 
| 142     } finally { | 145     } finally { | 
| 143       await loader.close(); | 146       await loader.close(); | 
| 144     } | 147     } | 
| 145   }); | 148   }); | 
|  | 149 | 
|  | 150   test("a print in a loaded file is piped through the LoadSuite", () async { | 
|  | 151     new File(p.join(_sandbox, 'a_test.dart')).writeAsStringSync(""" | 
|  | 152 void main() { | 
|  | 153   print('print within test'); | 
| 146 } | 154 } | 
|  | 155 """); | 
|  | 156     var suites = await _loader.loadFile(p.join(_sandbox, 'a_test.dart')) | 
|  | 157         .toList(); | 
|  | 158     expect(suites, hasLength(1)); | 
|  | 159     var loadSuite = suites.first; | 
|  | 160 | 
|  | 161     var liveTest = await loadSuite.tests.single.load(loadSuite); | 
|  | 162     expect(liveTest.onPrint.first, completion(equals("print within test"))); | 
|  | 163     await liveTest.run(); | 
|  | 164     expectTestPassed(liveTest); | 
|  | 165   }); | 
|  | 166 } | 
| OLD | NEW | 
|---|