main
1import 'dart:typed_data';
2
3import 'package:blood_pressure_app/features/bluetooth/logic/characteristics/ble_measurement_data.dart';
4import 'package:flutter_test/flutter_test.dart';
5
6void main() {
7 test('decodes sample data', () {
8 // 22 => 0001 0110
9 final result = BleMeasurementData.decode(Uint8List.fromList([22, 124, 0, 86, 0, 97, 0, 232, 7, 6, 15, 17, 17, 27, 51, 0, 0, 0]), 0);
10
11 expect(result, isNotNull);
12 expect(result!.systolic, 124.0);
13 expect(result.diastolic, 86.0);
14 expect(result.meanArterialPressure, 97.0);
15 expect(result.isMMHG, true);
16
17 expect(result.pulse, 51.0);
18 expect(result.timestamp, DateTime(2024, 06, 15, 17, 17, 27));
19 expect(result.userID, null);
20 expect(result.status?.bodyMovementDetected, false);
21 expect(result.status?.cuffTooLose, false);
22 expect(result.status?.irregularPulseDetected, false);
23 expect(result.status?.pulseRateInRange, true);
24 expect(result.status?.pulseRateExceedsUpperLimit, false);
25 expect(result.status?.pulseRateIsLessThenLowerLimit, false);
26 expect(result.status?.improperMeasurementPosition, false);
27 });
28}