11

I am trying to run some basic unit test for my flutter app. But when I run pub get I get the following error after including test: 1.20.0 in my pubspec:

dev_dependencies:
  dependency_validator: ^3.1.0 # run flutter pub run dependency_validator
  #integration_test:
  #  sdk: flutter
  flutter_test:
    sdk: flutter
  test: ^1.20.0 

so when I run f pub get I see:

    Because test >=1.20.0 depends on test_api 0.4.9 and every version of flutter_test from sdk depends on test_api 0.4.3, test >=1.20.0 is incompatible with flutter_test from sdk.
    So, because myapp depends on both flutter_test from sdk and test ^1.20.0, version solving failed.
    pub get failed (1; So, because myapp depends on both flutter_test from sdk and test ^1.20.0, version solving failed.)```

What version of test uses test_api  0.4.3?
lost baby
  • 3,178
  • 4
  • 32
  • 53
  • Its not safe but if it works you could try using dependency_overrides – DEFL Dec 17 '21 at 17:52
  • Thanks @EnviroApps, but it turns out I can just use **import 'package:flutter_test/flutter_test.dart';** instead of importing directly from the test package in my test file. Of course I realized this about 3 seconds after posting my question. – lost baby Dec 17 '21 at 17:56

3 Answers3

16

I can just use import 'package:flutter_test/flutter_test.dart'; instead of importing directly from the test package in my test file. So I don't need to include test: 1.20.0 in my pubspec.

lost baby
  • 3,178
  • 4
  • 32
  • 53
15

Try overriding test_api to 0.4.18 in your pubspec.yaml file:

dependency_overrides:
  test_api: 0.4.18

or

dependency_overrides:
  analyzer: ^3.0.0

You can probably remove this next time flutter updates.

CrenshawDK
  • 317
  • 1
  • 10
1

Add test_api in dependency_overrides

example:

dependency_overrides:
  test_api: ^0.4.17

dev_dependencies:
  flutter_test:
    sdk: flutter
  bloc_test: ^9.1.0
  build_runner: ^2.3.3