| OLD | NEW |
| 1 import 'dart:io' show exitCode; | 1 import 'dart:io' show exitCode; |
| 2 | 2 |
| 3 import 'package:analyzer_cli/src/driver.dart' show Driver, outSink, errorSink; | 3 import 'package:analyzer_cli/src/driver.dart' show Driver, outSink, errorSink; |
| 4 import 'package:analyzer_cli/src/options.dart' show ExitHandler, exitHandler; | 4 import 'package:analyzer_cli/src/options.dart' show ExitHandler, exitHandler; |
| 5 import 'package:path/path.dart'; |
| 5 import 'package:unittest/unittest.dart'; | 6 import 'package:unittest/unittest.dart'; |
| 6 | 7 |
| 7 import 'utils.dart' show testDirectory; | 8 import 'utils.dart' show testDirectory; |
| 8 | 9 |
| 9 main() { | 10 main() { |
| 10 group('--x-package-warnings-prefix', () { | 11 group('--x-package-warnings-prefix', () { |
| 11 _Runner runner; | 12 _Runner runner; |
| 12 | 13 |
| 13 setUp(() { | 14 setUp(() { |
| 14 runner = new _Runner.setUp(); | 15 runner = new _Runner.setUp(); |
| 15 }); | 16 }); |
| 16 | 17 |
| 17 tearDown(() { | 18 tearDown(() { |
| 18 runner.tearDown(); | 19 runner.tearDown(); |
| 19 runner = null; | 20 runner = null; |
| 20 }); | 21 }); |
| 21 | 22 |
| 22 test('shows only the hint whose package matches the prefix', () { | 23 test('shows only the hint whose package matches the prefix', () { |
| 23 runner.run([ | 24 runner.run([ |
| 24 "--packages", | 25 "--packages", |
| 25 "$testDirectory/data/package_prefix/packagelist", | 26 join(testDirectory, 'data', 'package_prefix', 'packagelist'), |
| 26 "--x-package-warnings-prefix=f", | 27 "--x-package-warnings-prefix=f", |
| 27 "$testDirectory/data/package_prefix/main.dart" | 28 join(testDirectory, 'data', 'package_prefix', 'main.dart') |
| 28 ]); | 29 ]); |
| 29 print("ran it"); | |
| 30 expect(runner.stdout, contains('1 hint found')); | 30 expect(runner.stdout, contains('1 hint found')); |
| 31 expect(runner.stdout, contains('Unused import')); | 31 expect(runner.stdout, contains('Unused import')); |
| 32 expect(runner.stdout, contains('package_prefix/pkg/foo/foo.dart')); | 32 expect(runner.stdout, |
| 33 contains(join('package_prefix', 'pkg', 'foo', 'foo.dart'))); |
| 33 expect(runner.stdout, isNot(contains('bar.dart'))); | 34 expect(runner.stdout, isNot(contains('bar.dart'))); |
| 34 }); | 35 }); |
| 35 }); | 36 }); |
| 36 } | 37 } |
| 37 | 38 |
| 38 class _Runner { | 39 class _Runner { |
| 39 final _stdout = new StringBuffer(); | 40 final _stdout = new StringBuffer(); |
| 40 final _stderr = new StringBuffer(); | 41 final _stderr = new StringBuffer(); |
| 41 | 42 |
| 42 final StringSink _savedOutSink; | 43 final StringSink _savedOutSink; |
| 43 final StringSink _savedErrorSink; | 44 final StringSink _savedErrorSink; |
| 44 final int _savedExitCode; | 45 final int _savedExitCode; |
| 45 final ExitHandler _savedExitHandler; | 46 final ExitHandler _savedExitHandler; |
| 46 | 47 |
| 47 _Runner.setUp() | 48 _Runner.setUp() |
| 48 : _savedOutSink = outSink, | 49 : _savedOutSink = outSink, |
| 49 _savedErrorSink = errorSink, | 50 _savedErrorSink = errorSink, |
| 50 _savedExitHandler = exitHandler, | 51 _savedExitHandler = exitHandler, |
| 51 _savedExitCode = exitCode { | 52 _savedExitCode = exitCode { |
| 52 outSink = _stdout; | 53 outSink = _stdout; |
| 53 errorSink = _stderr; | 54 errorSink = _stderr; |
| 54 exitHandler = (_) {}; | 55 exitHandler = (_) {}; |
| 55 } | 56 } |
| 56 | 57 |
| 58 String get stderr => _stderr.toString(); |
| 59 |
| 60 String get stdout => _stdout.toString(); |
| 57 void run(List<String> args) { | 61 void run(List<String> args) { |
| 58 new Driver().start(args); | 62 new Driver().start(args); |
| 59 if (stderr.isNotEmpty) { | 63 if (stderr.isNotEmpty) { |
| 60 fail("Unexpected output to stderr:\n$stderr"); | 64 fail("Unexpected output to stderr:\n$stderr"); |
| 61 } | 65 } |
| 62 } | 66 } |
| 63 | 67 |
| 64 String get stdout => _stdout.toString(); | |
| 65 String get stderr => _stderr.toString(); | |
| 66 | |
| 67 void tearDown() { | 68 void tearDown() { |
| 68 outSink = _savedOutSink; | 69 outSink = _savedOutSink; |
| 69 errorSink = _savedErrorSink; | 70 errorSink = _savedErrorSink; |
| 70 exitCode = _savedExitCode; | 71 exitCode = _savedExitCode; |
| 71 exitHandler = _savedExitHandler; | 72 exitHandler = _savedExitHandler; |
| 72 } | 73 } |
| 73 } | 74 } |
| OLD | NEW |