add some props an features
This commit is contained in:
@@ -107,6 +107,8 @@ void main() {
|
||||
final controller = Get.put(AnwendungController(filamentId: 'a'));
|
||||
await show(tester, const AnwendungView(), narrow: true);
|
||||
controller.druckController.text = '220,5';
|
||||
controller.empfohleneDrucktemperaturController.text = '220–260 °C';
|
||||
controller.empfohlenerHeizbettbereichController.text = '0–60 °C';
|
||||
controller.druckbettController.text = '65';
|
||||
controller.bauraumController.text = '40';
|
||||
controller.bauraumGeschlossen.value = true;
|
||||
@@ -120,6 +122,8 @@ void main() {
|
||||
expect(saved.anwendungId, matches(uuidPattern));
|
||||
expect(saved.filamentId, 'a');
|
||||
expect(saved.druckTemperatur, 220.5);
|
||||
expect(saved.empfohleneDrucktemperatur, '220–260 °C');
|
||||
expect(saved.empfohlenerHeizbettbereich, '0–60 °C');
|
||||
expect(saved.druckbettTemperatur, 65);
|
||||
expect(saved.bauraumGeschlossen, isTrue);
|
||||
expect(saved.bauraumTemperatur, 40);
|
||||
@@ -131,6 +135,8 @@ void main() {
|
||||
);
|
||||
expect(reloaded.anwendungen.single.anwendungId, saved.anwendungId);
|
||||
expect(reloaded.druckController.text, '220.5');
|
||||
expect(reloaded.empfohleneDrucktemperaturController.text, '220–260 °C');
|
||||
expect(reloaded.empfohlenerHeizbettbereichController.text, '0–60 °C');
|
||||
expect(reloaded.druckbettController.text, '65.0');
|
||||
expect(reloaded.bauraumController.text, '40.0');
|
||||
expect(reloaded.bauraumGeschlossen.value, isTrue);
|
||||
|
||||
@@ -16,6 +16,7 @@ import 'package:ertl_filament_verwaltung/services/bauteil_photo_service.dart';
|
||||
import 'package:ertl_filament_verwaltung/services/get_storage_services.dart';
|
||||
import 'package:ertl_filament_verwaltung/theme/app_theme.dart';
|
||||
import 'package:ertl_filament_verwaltung/widgets/bauteil_card.dart';
|
||||
import 'package:ertl_filament_verwaltung/widgets/bauteil_filament_auswahl.dart';
|
||||
import 'package:ertl_filament_verwaltung/widgets/bauteil_photo.dart';
|
||||
|
||||
import 'helpers/memory_storage_service.dart';
|
||||
@@ -123,6 +124,53 @@ void main() {
|
||||
home.filamente.firstWhere((item) => item.filamentId == id),
|
||||
)!;
|
||||
|
||||
testWidgets('Dropdown adds only selected filaments and supports removal', (
|
||||
tester,
|
||||
) async {
|
||||
await tester.pumpWidget(
|
||||
GetMaterialApp(
|
||||
theme: AppTheme.light,
|
||||
home: Scaffold(
|
||||
body: SingleChildScrollView(
|
||||
child: BauteilFilamentAuswahl(controller: controller),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
expect(find.byKey(const ValueKey('filament-a')), findsNothing);
|
||||
expect(find.byKey(const ValueKey('filament-b')), findsNothing);
|
||||
|
||||
Future<void> add(String id) async {
|
||||
await tester.tap(find.byType(DropdownButtonFormField<String>));
|
||||
await tester.pumpAndSettle();
|
||||
await tester.tap(find.text(controller.filamentLabel(id)).last);
|
||||
await tester.pumpAndSettle();
|
||||
}
|
||||
|
||||
await add('a');
|
||||
controller.verbrauchController('a').text = '25';
|
||||
expect(find.byKey(const ValueKey('filament-a')), findsOneWidget);
|
||||
expect(find.byKey(const ValueKey('filament-b')), findsNothing);
|
||||
expect(controller.selectedFilamente.keys, ['a']);
|
||||
|
||||
await add('b');
|
||||
expect(find.byType(DropdownButtonFormField<String>), findsNothing);
|
||||
expect(find.byKey(const ValueKey('filament-b')), findsOneWidget);
|
||||
await tester.tap(find.byTooltip('Filament entfernen').first);
|
||||
await tester.pumpAndSettle();
|
||||
expect(find.byKey(const ValueKey('filament-a')), findsNothing);
|
||||
expect(controller.selectedFilamente.keys, ['b']);
|
||||
|
||||
await add('a');
|
||||
expect(controller.verbrauchController('a').text, '25');
|
||||
controller.resetForm();
|
||||
await tester.pumpAndSettle();
|
||||
expect(find.byKey(const ValueKey('filament-a')), findsNothing);
|
||||
expect(find.byKey(const ValueKey('filament-b')), findsNothing);
|
||||
expect(find.byType(DropdownButtonFormField<String>), findsOneWidget);
|
||||
expect(tester.takeException(), isNull);
|
||||
});
|
||||
|
||||
test(
|
||||
'Legacy records retain unknown usage and old weight units are supported',
|
||||
() {
|
||||
|
||||
Reference in New Issue
Block a user