-
-
Notifications
You must be signed in to change notification settings - Fork 891
/
Copy pathpermission_status_test.dart
108 lines (96 loc) · 4.57 KB
/
permission_status_test.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
import 'package:flutter_test/flutter_test.dart';
import 'package:permission_handler_platform_interface/permission_handler_platform_interface.dart';
void main() {
group('PermissionStatus', () {
test('PermissionStatus should contain 7 options', () {
const values = PermissionStatus.values;
expect(values.length, 7);
});
test('PermissionStatus enum should have items in correct index', () {
const values = PermissionStatus.values;
expect(values[0], PermissionStatus.denied);
expect(values[1], PermissionStatus.granted);
expect(values[2], PermissionStatus.restricted);
expect(values[3], PermissionStatus.limited);
expect(values[4], PermissionStatus.permanentlyDenied);
expect(values[5], PermissionStatus.provisional);
expect(values[6], PermissionStatus.undetermined);
});
});
group('PermissionStatusValue', () {
test('PermissionStatusValue returns right integer', () {
expect(PermissionStatus.denied.value, 0);
expect(PermissionStatus.granted.value, 1);
expect(PermissionStatus.restricted.value, 2);
expect(PermissionStatus.limited.value, 3);
expect(PermissionStatus.permanentlyDenied.value, 4);
expect(PermissionStatus.provisional.value, 5);
expect(PermissionStatus.undetermined.value, 6);
});
test(
// ignore: lines_longer_than_80_chars
'statusByValue should return right index int that corresponds with the right PermissionStatus',
() {
expect(PermissionStatusValue.statusByValue(0), PermissionStatus.denied);
expect(PermissionStatusValue.statusByValue(1), PermissionStatus.granted);
expect(
PermissionStatusValue.statusByValue(2), PermissionStatus.restricted);
expect(PermissionStatusValue.statusByValue(3), PermissionStatus.limited);
expect(PermissionStatusValue.statusByValue(4),
PermissionStatus.permanentlyDenied);
expect(
PermissionStatusValue.statusByValue(5), PermissionStatus.provisional);
expect(PermissionStatusValue.statusByValue(6),
PermissionStatus.undetermined);
});
});
group('PermissionStatusGetters', () {
test('Getters should return true if statement is met', () {
expect(PermissionStatus.denied.isDenied, true);
expect(PermissionStatus.granted.isGranted, true);
expect(PermissionStatus.restricted.isRestricted, true);
expect(PermissionStatus.limited.isLimited, true);
expect(PermissionStatus.permanentlyDenied.isPermanentlyDenied, true);
expect(PermissionStatus.provisional.isProvisional, true);
expect(PermissionStatus.undetermined.isUndetermined, true);
});
test('Getters should return false if statement is not met', () {
expect(PermissionStatus.denied.isGranted, false);
expect(PermissionStatus.granted.isDenied, false);
expect(PermissionStatus.restricted.isDenied, false);
expect(PermissionStatus.limited.isDenied, false);
expect(PermissionStatus.permanentlyDenied.isDenied, false);
expect(PermissionStatus.provisional.isDenied, false);
expect(PermissionStatus.undetermined.isDenied, false);
});
});
group('FuturePermissionStatusGetters', () {
mockFuture(PermissionStatus status) => Future.value(status);
test('Getters should return true if statement is met', () async {
expect(await mockFuture(PermissionStatus.denied).isDenied, true);
expect(await mockFuture(PermissionStatus.granted).isGranted, true);
expect(await mockFuture(PermissionStatus.restricted).isRestricted, true);
expect(await mockFuture(PermissionStatus.limited).isLimited, true);
expect(
await mockFuture(PermissionStatus.permanentlyDenied)
.isPermanentlyDenied,
true);
expect(
await mockFuture(PermissionStatus.provisional).isProvisional, true);
expect(
await mockFuture(PermissionStatus.undetermined).isUndetermined, true);
});
test('Getters should return false if statement is not met', () async {
expect(await mockFuture(PermissionStatus.denied).isGranted, false);
expect(await mockFuture(PermissionStatus.granted).isDenied, false);
expect(await mockFuture(PermissionStatus.restricted).isDenied, false);
expect(await mockFuture(PermissionStatus.limited).isDenied, false);
expect(
await mockFuture(PermissionStatus.permanentlyDenied).isDenied, false);
expect(await mockFuture(PermissionStatus.provisional).isDenied, false);
expect(
await mockFuture(PermissionStatus.provisional).isUndetermined, false);
});
});
test('test', () {});
}