Я использовал flutter_dotenv для загрузки переменных окружения, сохраненных в .env
по всему приложению, и на сегодняшний день все работает нормально. Хотя я пытаюсь писать тесты, я не могу получить к ним доступ из тестового файла.
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:flutter_test/flutter_test.dart';
void main() {
setUp(() async {
await DotEnv().load();
});
test('Incorrect password should be rejected', () {
var password = DotEnv().env['PASSWORD'];
// stuff
});
}
Результат выполнения теста:
Shell: [flutter_dotenv] Load failed: file not found
Shell: [flutter_dotenv] No env values found. Make sure you have called DotEnv.load()
Просто не могу кажется, найти файл .env
. Я даже сделал копию .env
в тестовом каталоге, но он тоже не распознал.
Я пытался использовать Platform.environment вместо flutter_dotenv для доступа к переменной, но это не сработало либо, возвращая ноль.
Извиняюсь, если я здесь глупый, я впервые пишу тесты Флаттера, но буду признателен за совет.
Обновление:
Вот как выглядит мой pubspec.yaml
:
name: //name
description: //description
version: 1.0.0+3
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^0.1.2
font_awesome_flutter: ^8.5.0
flutter_youtube: ^2.0.0
http: ^0.12.0+4
flutter_dotenv: ^2.1.0
google_fonts: ^0.3.7
photo_view: ^0.9.2
flutter_page_transition: ^0.1.0
dev_dependencies:
flutter_test:
sdk: flutter
flutter:
uses-material-design: true
assets:
- images/
- .env