feat: add alot

This commit is contained in:
2026-10-08 04:12:36 +02:00
parent ccf5165417
commit fc607cb7bd
99 changed files with 4981 additions and 3655 deletions
+9 -41
View File
@@ -1,52 +1,20 @@
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:kooltab2/services/admin_pin_service.dart';
import 'package:mocktail/mocktail.dart';
import 'package:kooltap/services/admin_pin_service.dart';
class MockFlutterSecureStorage extends Mock implements FlutterSecureStorage {}
import 'helpers/memory_secure_storage.dart';
void main() {
late AdminPinService service;
late MockFlutterSecureStorage mockStorage;
setUp(() {
mockStorage = MockFlutterSecureStorage();
service = AdminPinService(storage: mockStorage);
});
test('uses separate secure-storage keys for the admin PIN', () async {
when(
() => mockStorage.write(
key: any(named: 'key'),
value: any(named: 'value'),
),
).thenAnswer((_) async {});
final storage = MemorySecureStorage();
final service = AdminPinService(storage: storage);
await service.setPin('1234');
verify(
() => mockStorage.write(
key: 'admin_pin_salt',
value: any(named: 'value'),
),
).called(1);
verify(
() => mockStorage.write(
key: 'admin_pin_hash',
value: any(named: 'value'),
),
).called(1);
verifyNever(
() => mockStorage.write(
key: 'pin_salt',
value: any(named: 'value'),
),
);
verifyNever(
() => mockStorage.write(
key: 'pin_hash',
value: any(named: 'value'),
),
expect(
storage.values.keys,
containsAll(['admin_pin_salt', 'admin_pin_hash']),
);
expect(storage.values.keys, isNot(contains('pin_salt')));
expect(storage.values.keys, isNot(contains('pin_hash')));
});
}