status_test.dart 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import 'package:flutter/widgets.dart';
  2. import 'package:flutter_test/flutter_test.dart';
  3. import 'package:get/get.dart';
  4. import 'package:gmus/components/status.dart';
  5. import 'package:gmus/controller.dart';
  6. class TestStatusBar extends StatelessWidget {
  7. final Controller controller;
  8. TestStatusBar({
  9. @required this.controller,
  10. });
  11. @override
  12. Widget build(BuildContext context) {
  13. Get.put(this.controller);
  14. return Directionality(
  15. textDirection: TextDirection.ltr,
  16. child: StatusBarWrapped(controller: this.controller),
  17. );
  18. }
  19. }
  20. void main() {
  21. testWidgets('Status bar should render a disconnected message', (WidgetTester tester) async {
  22. await tester.pumpWidget(TestStatusBar(controller: Controller()));
  23. expect(find.text('Disconnected'), findsOneWidget);
  24. });
  25. testWidgets('Status bar should render a connected message with name', (WidgetTester tester) async {
  26. Controller controller = Controller();
  27. controller.uniqueName = 'mob-DvaU1'.obs;
  28. controller.connected.value = true;
  29. await tester.pumpWidget(TestStatusBar(controller: controller));
  30. expect(find.textContaining('Connected'), findsOneWidget);
  31. expect(find.textContaining('mob-DvaU1'), findsOneWidget);
  32. });
  33. }