TermRemoteCtl/apps/mobile_app/integration_test/reconnect_flow_test.dart

30 lines
1.1 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:xterm/xterm.dart';
import 'package:term_remote_ctl/features/terminal/terminal_page.dart';
void main() {
testWidgets('reopens terminal and shows live mode affordance after being removed', (tester) async {
await tester.pumpWidget(const MaterialApp(home: TerminalPage()));
await tester.pumpAndSettle();
expect(find.textContaining('Live | 0 lines'), findsOneWidget);
expect(find.byType(TerminalView), findsOneWidget);
await tester.pumpWidget(const SizedBox.shrink());
await tester.pumpAndSettle();
expect(find.byType(TerminalPage), findsNothing);
await tester.pumpWidget(const MaterialApp(home: TerminalPage()));
await tester.pumpAndSettle();
expect(find.text('Terminal'), findsOneWidget);
expect(find.byType(TerminalView), findsOneWidget);
expect(
find.text('Minimal terminal shell. Live session wiring is not attached yet.'),
findsOneWidget,
);
expect(find.textContaining('Live | 0 lines'), findsOneWidget);
});
}