mirror of
				https://github.com/AppFlowy-IO/AppFlowy.git
				synced 2025-10-31 01:54:37 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
| import 'package:appflowy_board/appflowy_board.dart';
 | |
| import 'package:flutter_test/flutter_test.dart';
 | |
| import 'package:integration_test/integration_test.dart';
 | |
| import 'util/util.dart';
 | |
| 
 | |
| /// Integration tests for an empty board. The [TestWorkspaceService] will load
 | |
| /// a workspace from an empty board `assets/test/workspaces/board.zip` for all
 | |
| /// tests.
 | |
| ///
 | |
| /// To create another integration test with a preconfigured workspace.
 | |
| /// Use the following steps.
 | |
| /// 1. Create a new workspace from the AppFlowy launch screen.
 | |
| /// 2. Modify the workspace until it is suitable as the starting point for
 | |
| ///    the integration test you need to land.
 | |
| /// 3. Use a zip utility program to zip the workspace folder that you created.
 | |
| /// 4. Add the zip file under `assets/test/workspaces/`
 | |
| /// 5. Add a new enumeration to [TestWorkspace] in `integration_test/utils/data.dart`.
 | |
| ///    For example, if you added a workspace called `empty_calendar.zip`,
 | |
| ///    then [TestWorkspace] should have the following value:
 | |
| /// ```dart
 | |
| /// enum TestWorkspace {
 | |
| ///   board('board'),
 | |
| ///   empty_calendar('empty_calendar');
 | |
| ///
 | |
| ///   /* code */
 | |
| /// }
 | |
| /// ```
 | |
| /// 6. Double check that the .zip file that you added is included as an asset in
 | |
| ///    the pubspec.yaml file under appflowy_flutter.
 | |
| void main() {
 | |
|   IntegrationTestWidgetsFlutterBinding.ensureInitialized();
 | |
|   const service = TestWorkspaceService(TestWorkspace.board);
 | |
| 
 | |
|   group('board', () {
 | |
|     setUpAll(() async => await service.setUpAll());
 | |
|     setUp(() async => await service.setUp());
 | |
| 
 | |
|     testWidgets(
 | |
|         'integration test unzips the proper workspace and loads it correctly.',
 | |
|         (tester) async {
 | |
|       await tester.initializeAppFlowy();
 | |
|       expect(find.byType(AppFlowyBoard), findsOneWidget);
 | |
|     });
 | |
|   });
 | |
| }
 | 
