mirror of
https://github.com/dz0ny/meshcore-sar.git
synced 2026-08-11 16:30:28 +00:00
Update sensor customization view
This commit is contained in:
@@ -156,6 +156,7 @@ void main() {
|
||||
await tester.tap(find.text('Preview'));
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
expect(find.byIcon(Icons.close), findsOneWidget);
|
||||
expect(find.text('Battery'), findsOneWidget);
|
||||
expect(find.text('84%'), findsOneWidget);
|
||||
expect(find.text('Temperature'), findsOneWidget);
|
||||
@@ -172,10 +173,7 @@ void main() {
|
||||
find.byKey(const ValueKey('sensor_metric_channel_battery')),
|
||||
findsOneWidget,
|
||||
);
|
||||
expect(
|
||||
find.text('ch1'),
|
||||
findsWidgets,
|
||||
);
|
||||
expect(find.text('ch1'), findsWidgets);
|
||||
expect(
|
||||
find.byKey(const ValueKey('sensor_metric_channel_extra:illuminance_2')),
|
||||
findsOneWidget,
|
||||
@@ -186,5 +184,10 @@ void main() {
|
||||
find.byKey(const ValueKey('sensor_metric_battery')),
|
||||
);
|
||||
expect(batteryTileSize.width, greaterThan(sensorCardSize.width * 0.8));
|
||||
|
||||
await tester.tap(find.byIcon(Icons.close));
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
expect(find.byType(SensorTelemetryCard), findsNothing);
|
||||
});
|
||||
}
|
||||
|
||||
38
test/widgets/sensor_auto_refresh_options_test.dart
Normal file
38
test/widgets/sensor_auto_refresh_options_test.dart
Normal file
@@ -0,0 +1,38 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:meshcore_sar_app/screens/sensors_tab.dart';
|
||||
|
||||
void main() {
|
||||
testWidgets('renders expanded auto refresh intervals and selects value', (
|
||||
tester,
|
||||
) async {
|
||||
var selected = 0;
|
||||
|
||||
await tester.pumpWidget(
|
||||
MaterialApp(
|
||||
home: Scaffold(
|
||||
body: SensorAutoRefreshOptions(
|
||||
selectedMinutes: selected,
|
||||
onSelected: (minutes) {
|
||||
selected = minutes;
|
||||
},
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
expect(find.text('Off'), findsOneWidget);
|
||||
expect(find.text('5m'), findsOneWidget);
|
||||
expect(find.text('15m'), findsOneWidget);
|
||||
expect(find.text('30m'), findsOneWidget);
|
||||
expect(find.text('60m'), findsOneWidget);
|
||||
expect(find.text('6h'), findsOneWidget);
|
||||
expect(find.text('12h'), findsOneWidget);
|
||||
expect(find.text('24h'), findsOneWidget);
|
||||
|
||||
await tester.tap(find.text('24h'));
|
||||
await tester.pump();
|
||||
|
||||
expect(selected, 1440);
|
||||
});
|
||||
}
|
||||
@@ -15,6 +15,14 @@ void main() {
|
||||
defaultLabel: 'Illuminance',
|
||||
channel: 2,
|
||||
valuePreview: '500 lx',
|
||||
previewCardData: SensorMetricCardData(
|
||||
fieldKey: 'extra:illuminance_2',
|
||||
icon: Icons.light_mode_outlined,
|
||||
label: 'Illuminance',
|
||||
value: '500 lx',
|
||||
accent: Color(0xFFC17B1D),
|
||||
channel: 2,
|
||||
),
|
||||
),
|
||||
visible: true,
|
||||
span: 1,
|
||||
@@ -30,11 +38,12 @@ void main() {
|
||||
),
|
||||
);
|
||||
|
||||
expect(find.text('Show on sensor card'), findsOneWidget);
|
||||
expect(find.text('500 lx'), findsOneWidget);
|
||||
expect(
|
||||
find.byKey(const ValueKey('sensor_selector_channel_extra:illuminance_2')),
|
||||
findsOneWidget,
|
||||
);
|
||||
expect(find.text('ch2'), findsOneWidget);
|
||||
expect(find.text('Channel 2'), findsOneWidget);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user