mirror of
https://github.com/Auties00/Reboot-Launcher.git
synced 2026-01-13 11:12:23 +01:00
85 lines
2.1 KiB
Dart
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);
|
|
});
|
|
}
|