Skip to content

Commit 373e50c

Browse files
committed
test: added test for all files under utils/permissions
1 parent c41350d commit 373e50c

File tree

2 files changed

+68
-0
lines changed

2 files changed

+68
-0
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import 'package:flutter/material.dart';
2+
import 'package:flutter_test/flutter_test.dart';
3+
import 'package:mockito/annotations.dart';
4+
import 'package:mockito/mockito.dart';
5+
import 'package:permission_handler/permission_handler.dart';
6+
import 'package:taskwarrior/app/utils/permissions/permissions_manager.dart';
7+
import 'package:taskwarrior/app/utils/constants/permissions.dart';
8+
9+
import 'permissions_manager_test.mocks.dart';
10+
11+
@GenerateMocks([Permission])
12+
void main() {
13+
group('PermissionsManager', () {
14+
late MockPermission mockPermission;
15+
16+
setUp(() {
17+
WidgetsFlutterBinding.ensureInitialized();
18+
mockPermission = MockPermission();
19+
permissions.clear();
20+
permissions.add(mockPermission);
21+
});
22+
test('requestAllPermissions handles permission denied', () async {
23+
when(mockPermission.request())
24+
.thenAnswer((_) async => PermissionStatus.denied);
25+
26+
await PermissionsManager.requestAllPermissions();
27+
28+
verify(mockPermission.request()).called(1);
29+
});
30+
});
31+
}
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
// Mocks generated by Mockito 5.4.4 from annotations
2+
// in taskwarrior/test/utils/permissions/permissions_manager_test.dart.
3+
// Do not manually edit this file.
4+
5+
// ignore_for_file: no_leading_underscores_for_library_prefixes
6+
import 'package:mockito/mockito.dart' as _i1;
7+
import 'package:permission_handler_platform_interface/permission_handler_platform_interface.dart'
8+
as _i2;
9+
10+
// ignore_for_file: type=lint
11+
// ignore_for_file: avoid_redundant_argument_values
12+
// ignore_for_file: avoid_setters_without_getters
13+
// ignore_for_file: comment_references
14+
// ignore_for_file: deprecated_member_use
15+
// ignore_for_file: deprecated_member_use_from_same_package
16+
// ignore_for_file: implementation_imports
17+
// ignore_for_file: invalid_use_of_visible_for_testing_member
18+
// ignore_for_file: prefer_const_constructors
19+
// ignore_for_file: unnecessary_parenthesis
20+
// ignore_for_file: camel_case_types
21+
// ignore_for_file: subtype_of_sealed_class
22+
23+
/// A class which mocks [Permission].
24+
///
25+
/// See the documentation for Mockito's code generation for more information.
26+
// ignore: must_be_immutable
27+
class MockPermission extends _i1.Mock implements _i2.Permission {
28+
MockPermission() {
29+
_i1.throwOnMissingStub(this);
30+
}
31+
32+
@override
33+
int get value => (super.noSuchMethod(
34+
Invocation.getter(#value),
35+
returnValue: 0,
36+
) as int);
37+
}

0 commit comments

Comments
 (0)