legacy_repository_test.dart 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import 'package:pb_authenticator_state/legacy/legacy_repository.dart';
  2. import 'package:pb_authenticator_state/state.dart';
  3. import 'package:pb_authenticator_totp/totp.dart';
  4. import 'package:test/test.dart';
  5. import 'test_file_storage.dart';
  6. void main() {
  7. test('Has State?', () async {
  8. var repository = LegacyRepository(TestFileStorage());
  9. expect(await repository.hasState(), false);
  10. });
  11. test('Load', () async {
  12. var repository = LegacyRepository(TestFileStorage());
  13. var items = await repository.loadItems();
  14. expect(items.length, 0);
  15. });
  16. test('Add Item', () async {
  17. var repository = LegacyRepository(TestFileStorage());
  18. var item = TotpItem("ABCDEF");
  19. await repository.addItem(item);
  20. var items = await repository.loadItems();
  21. expect(items.length, 1);
  22. expect(items[0].totp, item);
  23. });
  24. test('Replace items', () async {
  25. var repository = LegacyRepository(TestFileStorage());
  26. var item = TotpItem("A");
  27. await repository.addItem(item);
  28. var item2 = LegacyAuthenticatorItem("id", TotpItem("A"));
  29. await repository.replaceItems([item2]);
  30. var newItems = await repository.loadItems();
  31. expect(newItems.length, 1);
  32. expect(newItems[0], item2);
  33. });
  34. }