diff --git a/test/fixtures/lcov_fixtures.dart b/test/fixtures/lcov_fixtures.dart index c71afea7e..9016700a6 100644 --- a/test/fixtures/lcov_fixtures.dart +++ b/test/fixtures/lcov_fixtures.dart @@ -1,5 +1,8 @@ -const lcov100 = ''' -SF:/bloc/packages/bloc/lib/src/bloc.dart +import 'package:path/path.dart' as p; + +final lcov100 = + ''' +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'bloc.dart')} DA:21,2 DA:22,1 DA:26,3 @@ -43,7 +46,7 @@ DA:250,1 LF:40 LH:40 end_of_record -SF:/bloc/packages/bloc/lib/src/bloc_observer.dart +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'bloc_observer.dart')} DA:14,1 DA:20,1 DA:27,1 @@ -53,7 +56,7 @@ DA:51,1 LF:6 LH:6 end_of_record -SF:/bloc/packages/bloc/lib/src/change.dart +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'change.dart')} DA:10,1 DA:18,1 DA:21,1 @@ -67,7 +70,7 @@ DA:31,3 LF:10 LH:10 end_of_record -SF:/bloc/packages/bloc/lib/src/cubit.dart +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'cubit.dart')} DA:16,1 DA:27,1 DA:29,3 @@ -103,7 +106,7 @@ DA:179,2 LF:32 LH:32 end_of_record -SF:/bloc/packages/bloc/lib/src/transition.dart +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'transition.dart')} DA:14,1 DA:18,1 DA:23,1 @@ -121,8 +124,9 @@ LH:12 end_of_record '''; -const lcov95 = ''' -SF:/bloc/packages/bloc/lib/src/bloc.dart +final lcov95 = + ''' +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'bloc.dart')} DA:21,2 DA:22,1 DA:26,3 @@ -166,7 +170,7 @@ DA:250,1 LF:40 LH:40 end_of_record -SF:/bloc/packages/bloc/lib/src/bloc_observer.dart +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'bloc_observer.dart')} DA:14,1 DA:20,0 DA:27,0 @@ -176,7 +180,7 @@ DA:51,0 LF:6 LH:1 end_of_record -SF:/bloc/packages/bloc/lib/src/change.dart +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'change.dart')} DA:10,1 DA:18,1 DA:21,1 @@ -190,7 +194,7 @@ DA:31,3 LF:10 LH:10 end_of_record -SF:/bloc/packages/bloc/lib/src/cubit.dart +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'cubit.dart')} DA:16,1 DA:27,1 DA:29,3 @@ -226,7 +230,7 @@ DA:179,2 LF:32 LH:32 end_of_record -SF:/bloc/packages/bloc/lib/src/transition.dart +SF:${p.join('bloc', 'packages', 'bloc', 'lib', 'src', 'transition.dart')} DA:14,1 DA:18,1 DA:23,1 diff --git a/test/src/cli/test_runner_cli_test.dart b/test/src/cli/test_runner_cli_test.dart index 8d9fe0034..a70713ef2 100644 --- a/test/src/cli/test_runner_cli_test.dart +++ b/test/src/cli/test_runner_cli_test.dart @@ -11,6 +11,7 @@ import 'package:stack_trace/stack_trace.dart' as stack_trace; import 'package:test/test.dart'; import 'package:very_good_cli/src/cli/cli.dart'; import 'package:very_good_test_runner/very_good_test_runner.dart'; + import '../../fixtures/fixtures.dart'; class _MockMasonGenerator extends Mock implements MasonGenerator {} @@ -338,6 +339,14 @@ void main() { '\x1B[2K\r00:12 +7 -1: Some tests failed.\n', ]), ); + + final testPath = p.join( + 'test', + 'counter', + 'cubit', + 'counter_cubit_test.dart', + ); + expect( stderrLogs, equals( @@ -349,7 +358,7 @@ void main() { 'test/counter/cubit/counter_cubit_test.dart 16:7 main..\n', '\x1B[2K\rCounterCubit initial state is 0 ${tempDirectory.path}/test/counter/cubit/counter_cubit_test.dart (FAILED)', '\x1B[2K\rFailing Tests:\n' - '\x1B[2K\r - test/counter/cubit/counter_cubit_test.dart \n' + '\x1B[2K\r - $testPath \n' '\x1B[2K\r \t- [FAILED] CounterCubit initial state is 0\n', ], ), @@ -424,7 +433,8 @@ void main() { 'The test description was: renders CounterPage', '\x1B[2K\rApp renders CounterPage ${tempDirectory.path}/test/app/view/app_test.dart (FAILED)', '\x1B[2K\rFailing Tests:\n' - '\x1B[2K\r - test/app/view/app_test.dart \n' + '\x1B[2K\r - ' + '${p.join('test', 'app', 'view', 'app_test.dart')} \n' '\x1B[2K\r \t- [ERROR] App renders CounterPage\n', ]), ); @@ -528,9 +538,10 @@ void main() { stderrLogs, equals([ '\x1B[2K\rerror', - '\x1B[2K\rtest/example_test.dart 4 main\n', + '\x1B[2K\r${p.join('test', 'example_test.dart')} 4 main\n', '\x1B[2K\rFailing Tests:\n' - '\x1B[2K\r - test/app/view/app_test.dart \n' + '\x1B[2K\r - ' + '${p.join('test', 'app', 'view', 'app_test.dart')} \n' '''\x1B[2K\r \t- [FAILED] CounterCubit emits [1] when increment is called\n''', ]), ); @@ -879,7 +890,7 @@ void main() { collectCoverage: true, minCoverage: 100, excludeFromCoverage: - '/bloc/packages/bloc/lib/src/bloc_observer.dart', + 'bloc/packages/bloc/lib/src/bloc_observer.dart', stdout: stdoutLogs.add, stderr: stderrLogs.add, overrideTestRunner: testRunner( @@ -1144,7 +1155,11 @@ void main() { suite: TestSuite( id: 4, platform: 'vm', - path: '${tempDirectory.path}/test/.test_optimizer.dart', + path: p.join( + tempDirectory.path, + 'test', + '.test_optimizer.dart', + ), ), time: 0, ), @@ -1204,9 +1219,10 @@ void main() { stderrLogs, equals([ '\x1B[2K\rerror', - '\x1B[2K\rtest/example_test.dart 4 main\n', + '\x1B[2K\r${p.join('test', 'example_test.dart')} 4 main\n', '\x1B[2K\rFailing Tests:\n' - '\x1B[2K\r - test/app/view/app_test.dart \n' + '\x1B[2K\r - ' + '${p.join('test', 'app', 'view', 'app_test.dart')} \n' '''\x1B[2K\r \t- [FAILED] CounterCubit emits [1] when increment is called\n''', ]), ); @@ -1222,8 +1238,8 @@ void main() { final updatedVars = { 'package-root': tempDirectory.path, 'notOptimizedTests': [ - 'app/view/app_test.dart', - 'app/cubit/cubit_test.dart', + p.join('app', 'view', 'app_test.dart'), + p.join('app', 'cubit', 'cubit_test.dart'), ], }; File(p.join(tempDirectory.path, 'pubspec.yaml')).createSync(); @@ -1272,8 +1288,8 @@ void main() { testRunnerArgs, equals([ p.join('test', '.test_optimizer.dart'), - 'test/app/view/app_test.dart', - 'test/app/cubit/cubit_test.dart', + p.join('test', 'app', 'view', 'app_test.dart'), + p.join('test', 'app', 'cubit', 'cubit_test.dart'), ]), ); }, diff --git a/test/src/command_runner_test.dart b/test/src/command_runner_test.dart index da1b0159d..da9d82da7 100644 --- a/test/src/command_runner_test.dart +++ b/test/src/command_runner_test.dart @@ -199,7 +199,10 @@ void main() { }); test('shows message when version changed', () async { - commandRunner.environmentOverride = {'HOME': '/users/test'}; + commandRunner.environmentOverride = { + 'HOME': '/users/test', + 'LOCALAPPDATA': '/users/test', + }; await IOOverrides.runZoned( () async { @@ -241,10 +244,12 @@ void main() { }); test('cache inside XDG directory', () async { - commandRunner.environmentOverride = { - 'HOME': '/users/test', - 'XDG_CONFIG_HOME': '/users/test/.xdg', - }; + commandRunner + ..environmentOverride = { + 'HOME': '/users/test', + 'XDG_CONFIG_HOME': '/users/test/.xdg', + } + ..isWindowsOverride = false; final xdgCache = _MockDirectory(); when(() => xdgCache.path).thenReturn('/users/test/.xdg'); diff --git a/test/src/commands/dart/commands/dart_test_test.dart b/test/src/commands/dart/commands/dart_test_test.dart index 850fbe5f0..215c8347d 100644 --- a/test/src/commands/dart/commands/dart_test_test.dart +++ b/test/src/commands/dart/commands/dart_test_test.dart @@ -137,7 +137,10 @@ void main() { 'when no pubspec.yaml exists', withRunner((commandRunner, logger, pubUpdater, printLogs) async { final tempDirectory = Directory.systemTemp.createTempSync(); - addTearDown(() => tempDirectory.deleteSync(recursive: true)); + addTearDown(() { + Directory.current = cwd; + tempDirectory.deleteSync(recursive: true); + }); Directory.current = tempDirectory.path; final result = await commandRunner.run(['dart', 'test']); @@ -152,7 +155,10 @@ void main() { 'completes normally when no pubspec.yaml exists (recursive)', withRunner((commandRunner, logger, pubUpdater, printLogs) async { final tempDirectory = Directory.systemTemp.createTempSync(); - addTearDown(() => tempDirectory.deleteSync(recursive: true)); + addTearDown(() { + Directory.current = cwd; + tempDirectory.deleteSync(recursive: true); + }); Directory.current = tempDirectory.path; diff --git a/test/src/commands/packages/commands/check/commands/licenses_test.dart b/test/src/commands/packages/commands/check/commands/licenses_test.dart index ee610704c..3b4448f96 100644 --- a/test/src/commands/packages/commands/check/commands/licenses_test.dart +++ b/test/src/commands/packages/commands/check/commands/licenses_test.dart @@ -535,7 +535,7 @@ and limitations under the License.'''); 'nothing', ); when(() => veryGoodTestRunnerConfigPackage.root).thenReturn( - Uri.parse(packagePath), + Uri.file(packagePath), ); final targetPath = tempDirectory.path; @@ -1719,7 +1719,7 @@ and limitations under the License.'''); 'nothing', ); when(() => veryGoodTestRunnerConfigPackage.root).thenReturn( - Uri.parse(packagePath), + Uri.file(packagePath), ); final targetPath = tempDirectory.path; diff --git a/test/src/commands/packages/commands/get_test.dart b/test/src/commands/packages/commands/get_test.dart index dad0e557a..54413ec6c 100644 --- a/test/src/commands/packages/commands/get_test.dart +++ b/test/src/commands/packages/commands/get_test.dart @@ -523,7 +523,7 @@ sdk: ^3.9.0 'packages', 'get', '--recursive', - '${tempDirectory.path}/plugin', + path.join(tempDirectory.path, 'plugin'), ]); expect(result, equals(ExitCode.success.code)); @@ -541,8 +541,8 @@ sdk: ^3.9.0 verify(() { logger.progress( any( - that: contains( - '''Running "flutter pub get" in ./example''', + that: matches( + RegExp(r'Running "flutter pub get" in \.[/\\]example'), ), ), ); @@ -617,8 +617,8 @@ sdk: ^3.9.0 verify(() { logger.progress( any( - that: contains( - '''Running "flutter pub get" in ./my_sub_package''', + that: matches( + RegExp(r'Running "flutter pub get" in \.[/\\]my_sub_package'), ), ), ); diff --git a/test/src/commands/test/test_test.dart b/test/src/commands/test/test_test.dart index efb0fa3bc..cc39567f2 100644 --- a/test/src/commands/test/test_test.dart +++ b/test/src/commands/test/test_test.dart @@ -139,7 +139,10 @@ void main() { 'when no pubspec.yaml exists', withRunner((commandRunner, logger, pubUpdater, printLogs) async { final tempDirectory = Directory.systemTemp.createTempSync(); - addTearDown(() => tempDirectory.deleteSync(recursive: true)); + addTearDown(() { + Directory.current = cwd; + tempDirectory.deleteSync(recursive: true); + }); Directory.current = tempDirectory.path; final result = await commandRunner.run(['test']); @@ -154,7 +157,10 @@ void main() { 'completes normally when no pubspec.yaml exists (recursive)', withRunner((commandRunner, logger, pubUpdater, printLogs) async { final tempDirectory = Directory.systemTemp.createTempSync(); - addTearDown(() => tempDirectory.deleteSync(recursive: true)); + addTearDown(() { + Directory.current = cwd; + tempDirectory.deleteSync(recursive: true); + }); Directory.current = tempDirectory.path;