| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 | import 'package:appflowy/workspace/application/appearance_defaults.dart';import 'package:appflowy/workspace/application/settings/prelude.dart';import 'package:appflowy/workspace/presentation/settings/widgets/settings_appearance/settings_appearance.dart';import 'package:flutter/material.dart';import 'package:flutter_test/flutter_test.dart';import 'package:integration_test/integration_test.dart';import 'util/util.dart';void main() {  IntegrationTestWidgetsFlutterBinding.ensureInitialized();  group('appearance settings tests', () {    testWidgets('after editing text field, button should be able to be clicked',        (tester) async {      await tester.initializeAppFlowy();      await tester.tapGoButton();      tester.expectToSeeHomePage();      await tester.openSettings();      await tester.openSettingsPage(SettingsPage.appearance);      final dropDown = find.byKey(ThemeFontFamilySetting.popoverKey);      await tester.tap(dropDown);      await tester.pumpAndSettle();      final textField = find.byKey(ThemeFontFamilySetting.textFieldKey);      await tester.tap(textField);      await tester.pumpAndSettle();      await tester.enterText(textField, 'Abel');      await tester.pumpAndSettle();      final fontFamilyButton = find.byKey(const Key('Abel'));      expect(fontFamilyButton, findsOneWidget);      await tester.tap(fontFamilyButton);      await tester.pumpAndSettle();      // just switch the page and verify that the font family was set after that      await tester.openSettingsPage(SettingsPage.files);      await tester.openSettingsPage(SettingsPage.appearance);      expect(find.textContaining('Abel'), findsOneWidget);    });    testWidgets('reset the font family', (tester) async {      await tester.initializeAppFlowy();      await tester.tapGoButton();      tester.expectToSeeHomePage();      await tester.openSettings();      await tester.openSettingsPage(SettingsPage.appearance);      final dropDown = find.byKey(ThemeFontFamilySetting.popoverKey);      await tester.tap(dropDown);      await tester.pumpAndSettle();      final textField = find.byKey(ThemeFontFamilySetting.textFieldKey);      await tester.tap(textField);      await tester.pumpAndSettle();      await tester.enterText(textField, 'Abel');      await tester.pumpAndSettle();      final fontFamilyButton = find.byKey(const Key('Abel'));      expect(fontFamilyButton, findsOneWidget);      await tester.tap(fontFamilyButton);      await tester.pumpAndSettle();      // just switch the page and verify that the font family was set after that      await tester.openSettingsPage(SettingsPage.files);      await tester.openSettingsPage(SettingsPage.appearance);      final resetButton = find.byKey(ThemeFontFamilySetting.resetButtonkey);      await tester.tap(resetButton);      await tester.pumpAndSettle();      // just switch the page and verify that the font family was set after that      await tester.openSettingsPage(SettingsPage.files);      await tester.openSettingsPage(SettingsPage.appearance);      expect(        find.textContaining(DefaultAppearanceSettings.kDefaultFontFamily),        findsOneWidget,      );    });  });}
 |