permission.service.spec.ts
6.51 KB
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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
import { PermissionService } from './permission.service';
describe("PermissionService", () => {
// Profile TESTS
it("check if a person has no permission if there is no permissions in object", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Profile>{ id: 1, identifier: "some" };
expect(permissionService.isAllowed(target, null)).toBe(false);
done();
});
it("check if a person has no permission if the permissions is null", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Profile>{ id: 1, identifier: "some", permissions: null };
expect(permissionService.isAllowed(target, null)).toBe(false);
done();
});
it("check if a person has no permission if the permissions is empty", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Profile>{ id: 1, identifier: "some", permissions: [] };
expect(permissionService.isAllowed(target, null)).toBe(false);
done();
});
it("check person has no permission if permissions has no element named like permission desired", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Profile>{ id: 1, identifier: "some", permissions: ['another_permission'] };
expect(permissionService.isAllowed(target, 'some_permission')).toBe(false);
done();
});
it("check person has permission if permissions has the element named like permission desired", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Profile>{ id: 1, identifier: "some", permissions: ['some_permission'] };
expect(permissionService.isAllowed(target, 'some_permission')).toBe(true);
done();
});
it("check person has permission if permissions has some element named like permission desired", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Profile>{ id: 1, identifier: "some", permissions: ['another', 'some_permission'] };
expect(permissionService.isAllowed(target, 'some_permission')).toBe(true);
done();
});
// Comment TESTS
it("check if a person has no permission if there is no permissions in object", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Comment>{ id: 1 };
expect(permissionService.isAllowed(target, null)).toBe(false);
done();
});
it("check if a person has no permission if the permissions is null", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Comment>{ id: 1, permissions: null };
expect(permissionService.isAllowed(target, null)).toBe(false);
done();
});
it("check if a person has no permission if the permissions is empty", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Comment>{ id: 1, permissions: [] };
expect(permissionService.isAllowed(target, null)).toBe(false);
done();
});
it("check person has no permission if permissions has no element named like permission desired", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Comment>{ id: 1, permissions: ['another_permission'] };
expect(permissionService.isAllowed(target, 'some_permission')).toBe(false);
done();
});
it("check person has permission if permissions has the element named like permission desired", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Comment>{ id: 1, permissions: ['some_permission'] };
expect(permissionService.isAllowed(target, 'some_permission')).toBe(true);
done();
});
it("check person has permission if permissions has some element named like permission desired", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Comment>{ id: 1, permissions: ['another', 'some_permission'] };
expect(permissionService.isAllowed(target, 'some_permission')).toBe(true);
done();
});
// Article TESTS
it("check if a person has no permission if there is no permissions in object", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Article>{ id: 1 };
expect(permissionService.isAllowed(target, null)).toBe(false);
done();
});
it("check if a person has no permission if the permissions is null", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Article>{ id: 1, permissions: null };
expect(permissionService.isAllowed(target, null)).toBe(false);
done();
});
it("check if a person has no permission if the permissions is empty", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Article>{ id: 1, permissions: [] };
expect(permissionService.isAllowed(target, null)).toBe(false);
done();
});
it("check person has no permission if permissions has no element named like permission desired", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Article>{ id: 1, permissions: ['another_permission'] };
expect(permissionService.isAllowed(target, 'some_permission')).toBe(false);
done();
});
it("check person has permission if permissions has the element named like permission desired", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Article>{ id: 1, permissions: ['some_permission'] };
expect(permissionService.isAllowed(target, 'some_permission')).toBe(true);
done();
});
it("check person has permission if permissions has some element named like permission desired", (done) => {
let permissionService: PermissionService = new PermissionService();
let target = <noosfero.Article>{ id: 1, permissions: ['another', 'some_permission'] };
expect(permissionService.isAllowed(target, 'some_permission')).toBe(true);
done();
});
});