| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | import 'package:appflowy/plugins/database_view/tar_bar/tar_bar_add_button.dart';import 'package:appflowy_backend/protobuf/flowy-database2/setting_entities.pbenum.dart';import 'package:appflowy_backend/protobuf/flowy-folder2/view.pb.dart';import 'package:flutter_test/flutter_test.dart';import 'package:integration_test/integration_test.dart';import 'util/database_test_op.dart';import 'util/util.dart';void main() {  IntegrationTestWidgetsFlutterBinding.ensureInitialized();  group('database', () {    testWidgets('create linked view', (tester) async {      await tester.initializeAppFlowy();      await tester.tapGoButton();      await tester.createNewPageWithName(layout: ViewLayoutPB.Grid);      // Create board view      await tester.tapCreateLinkedDatabaseViewButton(AddButtonAction.board);      tester.assertCurrentDatabaseTagIs(DatabaseLayoutPB.Board);      // Create grid view      await tester.tapCreateLinkedDatabaseViewButton(AddButtonAction.grid);      tester.assertCurrentDatabaseTagIs(DatabaseLayoutPB.Grid);      // Create calendar view      await tester.tapCreateLinkedDatabaseViewButton(AddButtonAction.calendar);      tester.assertCurrentDatabaseTagIs(DatabaseLayoutPB.Calendar);      await tester.pumpAndSettle();    });    testWidgets('rename and delete linked view', (tester) async {      await tester.initializeAppFlowy();      await tester.tapGoButton();      await tester.createNewPageWithName(layout: ViewLayoutPB.Grid);      // Create board view      await tester.tapCreateLinkedDatabaseViewButton(AddButtonAction.board);      tester.assertCurrentDatabaseTagIs(DatabaseLayoutPB.Board);      // rename board view      await tester.renameLinkedView(        tester.findTabBarLinkViewByViewLayout(ViewLayoutPB.Board),        'new board',      );      final findBoard = tester.findTabBarLinkViewByViewName('new board');      expect(findBoard, findsOneWidget);      // delete the board      await tester.deleteDatebaseView(findBoard);      expect(tester.findTabBarLinkViewByViewName('new board'), findsNothing);      await tester.pumpAndSettle();    });    testWidgets('delete the last database view', (tester) async {      await tester.initializeAppFlowy();      await tester.tapGoButton();      await tester.createNewPageWithName(layout: ViewLayoutPB.Grid);      // Create board view      await tester.tapCreateLinkedDatabaseViewButton(AddButtonAction.board);      tester.assertCurrentDatabaseTagIs(DatabaseLayoutPB.Board);      // delete the board      await tester.deleteDatebaseView(        tester.findTabBarLinkViewByViewLayout(ViewLayoutPB.Board),      );      await tester.pumpAndSettle();    });  });}
 |