Тестирование, когда GestureDector onTapDown TextFormField перестает скрывать текст

Я сталкиваюсь со следующей ситуацией. У меня есть стек с TextFormField и GestureDetector (с изображением внутри), который, когда его касаются, освобождает текст от TextFormField. Общий значок глаза нажмите, чтобы раскрыть пароль.

Это на самом деле работает, но я пытаюсь сделать тест, чтобы покрыть это, и я не могу найти способ сделать это. Это то, что у меня есть на данный момент, но текст не раскрывается.

testWidgets('Eye button reveals the password', (WidgetTester tester) async {
  await tester.pumpWidget(
    overlay(
      child: PasswordFormField(hint: 'M'),
    ),
  );
  await tester.showKeyboard(find.byType(PasswordFormField));
  await tester.enterText(find.byType(TextFormField), 'P');

  await tester.pump(const Duration(seconds: 2));

  String password = findRenderEditable(tester).text.text;
  expect(password, '\u2022');

  await tester.press(find.byType(SvgPicture));
  await tester.pump();

  password = findRenderEditable(tester).text.text;
  expect(password, 'P');
});

Последнее ожидание не выполняется, указывая, что пароль не P, а '\u2022'.

0 ответов

Другие вопросы по тегам