Files
Reboot-Launcher/dependencies/fluent_ui-3.12.0/test/toggle_switch_test.dart
Alessandro Autiero 55467152c9 Made build portable
2022-10-07 17:23:30 +02:00

85 lines
2.1 KiB
Dart

import 'package:fluent_ui/fluent_ui.dart';
import 'package:flutter_test/flutter_test.dart';
import 'app_test.dart';
void main() {
testWidgets('ToggleSwitch change state accordingly',
(WidgetTester tester) async {
bool toggleSwitchValue = false;
await tester.pumpWidget(
StatefulBuilder(
builder: (BuildContext context, StateSetter setState) {
return wrapApp(
child: ToggleSwitch(
checked: toggleSwitchValue,
onChanged: (bool value) {
setState(() {
toggleSwitchValue = value;
});
},
),
);
},
),
);
expect(
tester.widget<ToggleSwitch>(find.byType(ToggleSwitch)).checked,
false,
);
await tester.tap(find.byType(ToggleSwitch));
await tester.pumpAndSettle();
expect(toggleSwitchValue, true);
await tester.tap(find.byType(ToggleSwitch));
await tester.pumpAndSettle();
expect(toggleSwitchValue, false);
});
testWidgets('ToggleSwitch can drag (LTR)', (WidgetTester tester) async {
bool value = false;
await tester.pumpWidget(
wrapApp(
child: StatefulBuilder(
builder: (BuildContext context, StateSetter setState) {
return Center(
child: ToggleSwitch(
checked: value,
onChanged: (bool newValue) {
setState(() {
value = newValue;
});
},
),
);
},
),
),
);
expect(value, isFalse);
await tester.drag(find.byType(ToggleSwitch), const Offset(-30.0, 0.0));
expect(value, isFalse);
await tester.drag(find.byType(ToggleSwitch), const Offset(30.0, 0.0));
expect(value, isTrue);
await tester.pump();
await tester.drag(find.byType(ToggleSwitch), const Offset(30.0, 0.0));
expect(value, isTrue);
await tester.pump();
await tester.drag(find.byType(ToggleSwitch), const Offset(-30.0, 0.0));
expect(value, isFalse);
});
}