mirror of
				https://github.com/AppFlowy-IO/AppFlowy.git
				synced 2025-10-31 18:15:09 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			59 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
| import 'package:appflowy/generated/locale_keys.g.dart';
 | |
| import 'package:appflowy/plugins/base/icon/icon_picker.dart';
 | |
| import 'package:appflowy/workspace/presentation/home/menu/sidebar/sidebar_workspace.dart';
 | |
| import 'package:appflowy/workspace/presentation/home/menu/sidebar/workspace/_sidebar_workspace_actions.dart';
 | |
| import 'package:appflowy/workspace/presentation/home/menu/sidebar/workspace/_sidebar_workspace_icon.dart';
 | |
| import 'package:appflowy/workspace/presentation/home/menu/sidebar/workspace/_sidebar_workspace_menu.dart';
 | |
| import 'package:easy_localization/easy_localization.dart';
 | |
| import 'package:flutter/material.dart';
 | |
| import 'package:flutter_test/flutter_test.dart';
 | |
| 
 | |
| import 'base.dart';
 | |
| 
 | |
| extension AppFlowyWorkspace on WidgetTester {
 | |
|   /// Open workspace menu
 | |
|   Future<void> openWorkspaceMenu() async {
 | |
|     final workspaceWrapper = find.byType(SidebarSwitchWorkspaceButton);
 | |
|     expect(workspaceWrapper, findsOneWidget);
 | |
|     await tapButton(workspaceWrapper);
 | |
|     final workspaceMenu = find.byType(WorkspacesMenu);
 | |
|     expect(workspaceMenu, findsOneWidget);
 | |
|   }
 | |
| 
 | |
|   /// Open a workspace
 | |
|   Future<void> openWorkspace(String name) async {
 | |
|     final workspace = find.descendant(
 | |
|       of: find.byType(WorkspaceMenuItem),
 | |
|       matching: find.findTextInFlowyText(name),
 | |
|     );
 | |
|     expect(workspace, findsOneWidget);
 | |
|     await tapButton(workspace);
 | |
|   }
 | |
| 
 | |
|   Future<void> changeWorkspaceName(String name) async {
 | |
|     final moreButton = find.descendant(
 | |
|       of: find.byType(WorkspaceMenuItem),
 | |
|       matching: find.byType(WorkspaceMoreActionList),
 | |
|     );
 | |
|     expect(moreButton, findsOneWidget);
 | |
|     await tapButton(moreButton);
 | |
|     await tapButton(find.findTextInFlowyText(LocaleKeys.button_rename.tr()));
 | |
|     final input = find.byType(TextFormField);
 | |
|     expect(input, findsOneWidget);
 | |
|     await enterText(input, name);
 | |
|     await tapButton(find.text(LocaleKeys.button_ok.tr()));
 | |
|   }
 | |
| 
 | |
|   Future<void> changeWorkspaceIcon(String icon) async {
 | |
|     final iconButton = find.descendant(
 | |
|       of: find.byType(WorkspaceMenuItem),
 | |
|       matching: find.byType(WorkspaceIcon),
 | |
|     );
 | |
|     expect(iconButton, findsOneWidget);
 | |
|     await tapButton(iconButton);
 | |
|     final iconPicker = find.byType(FlowyIconPicker);
 | |
|     expect(iconPicker, findsOneWidget);
 | |
|     await tapButton(find.findTextInFlowyText(icon));
 | |
|   }
 | |
| }
 | 
