aboutsummaryrefslogtreecommitdiff
path: root/frontend/test/agent_message_tile_test.dart
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/test/agent_message_tile_test.dart')
-rw-r--r--frontend/test/agent_message_tile_test.dart46
1 files changed, 46 insertions, 0 deletions
diff --git a/frontend/test/agent_message_tile_test.dart b/frontend/test/agent_message_tile_test.dart
new file mode 100644
index 000000000..89de5bd4b
--- /dev/null
+++ b/frontend/test/agent_message_tile_test.dart
@@ -0,0 +1,46 @@
+import 'package:auto_gpt_flutter_client/views/chat/agent_message_tile.dart';
+import 'package:auto_gpt_flutter_client/views/chat/json_code_snippet_view.dart';
+import 'package:flutter/material.dart';
+import 'package:flutter_test/flutter_test.dart';
+
+void main() {
+ // Test to verify that the AgentMessageTile renders correctly
+ testWidgets('Renders AgentMessageTile', (WidgetTester tester) async {
+ await tester.pumpWidget(const MaterialApp(
+ home: Scaffold(
+ body: AgentMessageTile(message: 'Test Message'),
+ ),
+ ));
+
+ // Verify that the agent title is displayed
+ expect(find.text('Agent'), findsOneWidget);
+ // Verify that the message text is displayed
+ expect(find.text('Test Message'), findsOneWidget);
+ });
+
+ // Test to verify that the expand/collapse functionality works
+ testWidgets('Toggle Expand/Collapse', (WidgetTester tester) async {
+ await tester.pumpWidget(const MaterialApp(
+ home: Scaffold(
+ body: AgentMessageTile(message: 'Test Message'),
+ ),
+ ));
+
+ // Verify that the JSON code snippet is not visible initially
+ expect(find.byType(JsonCodeSnippetView), findsNothing);
+
+ // Tap the expand/collapse button
+ await tester.tap(find.byIcon(Icons.keyboard_arrow_down));
+ await tester.pumpAndSettle();
+
+ // Verify that the JSON code snippet is now visible
+ expect(find.byType(JsonCodeSnippetView), findsOneWidget);
+
+ // Tap the expand/collapse button again
+ await tester.tap(find.byIcon(Icons.keyboard_arrow_up));
+ await tester.pumpAndSettle();
+
+ // Verify that the JSON code snippet is hidden again
+ expect(find.byType(JsonCodeSnippetView), findsNothing);
+ });
+}