Я пытаюсь написать модульные тесты с использованием эмулятора Firestore.
Я запустил эмулятор с помощью следующей команды:
firebase emulators:start --only firestore
Тест выглядит следующим образом:
testWidgets('should retrieve correct item', (tester) async {
await Firestore.instance.settings(
host: "127.0.0.1:8080",
sslEnabled: false,
persistenceEnabled: false,
);
var ref = await Firestore.instance
.collection('books')
.add({ 'title': 'title'});
// Fetch item by id
var resp = await Firestore.instance
.collection('books')
.document(ref.documentID)
.get();
expect(resp, isNotNull);
});
Проблема в том, что код зависает на методе .settings()
и никогда не переходит к следующим шагам.
Забавный факт: когда я останавливаю эмулятор, тесты действуют одинаково и зависают .add()
метод, который заставляет меня задуматься, а правильно ли я это делаю.