This project has retired. For details please refer to its
Attic page.
RepositoryInfoTest xref
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.chemistry.opencmis.tck.tests.basics;
20
21 import static org.apache.chemistry.opencmis.tck.CmisTestResultStatus.FAILURE;
22 import static org.apache.chemistry.opencmis.tck.CmisTestResultStatus.OK;
23 import static org.apache.chemistry.opencmis.tck.CmisTestResultStatus.WARNING;
24
25 import java.util.Map;
26
27 import org.apache.chemistry.opencmis.client.api.Session;
28 import org.apache.chemistry.opencmis.commons.data.AclCapabilities;
29 import org.apache.chemistry.opencmis.commons.data.RepositoryCapabilities;
30 import org.apache.chemistry.opencmis.commons.data.RepositoryInfo;
31 import org.apache.chemistry.opencmis.commons.definitions.PermissionDefinition;
32 import org.apache.chemistry.opencmis.tck.CmisTestResult;
33 import org.apache.chemistry.opencmis.tck.impl.AbstractSessionTest;
34
35
36
37
38 public class RepositoryInfoTest extends AbstractSessionTest {
39
40 @Override
41 public void init(Map<String, String> parameters) {
42 super.init(parameters);
43 setName("Repository Info Test");
44 setDescription("Gets and checks the repository info.");
45 }
46
47 @Override
48 public void run(Session session) {
49 CmisTestResult success;
50 CmisTestResult failure;
51
52 RepositoryInfo ri = getRepositoryInfo(session);
53
54
55 success = createResult(OK, "Repository id: " + ri.getId());
56 failure = createResult(FAILURE, "Repository id is not set!", true);
57 addResult(assertStringNotEmpty(ri.getId(), success, failure));
58
59
60 failure = createResult(FAILURE, "Repository name is not set!");
61 addResult(assertNotNull(ri.getName(), null, failure));
62
63 success = createResult(OK, "Repository name: " + ri.getName());
64 failure = createResult(WARNING, "Repository name is empty!");
65 addResult(assertStringNotEmpty(ri.getName(), success, failure));
66
67
68 failure = createResult(FAILURE, "Repository description is not set!");
69 addResult(assertNotNull(ri.getDescription(), null, failure));
70
71 success = createResult(OK, "Repository description: " + ri.getDescription());
72 failure = createResult(WARNING, "Repository description is empty!");
73 addResult(assertStringNotEmpty(ri.getDescription(), success, failure));
74
75
76 failure = createResult(FAILURE, "Vendor name is not set!");
77 addResult(assertStringNotEmpty(ri.getVendorName(), null, failure));
78
79 success = createResult(OK, "Vendor name: " + ri.getVendorName());
80 failure = createResult(WARNING, "Vendor name is empty!");
81 addResult(assertStringNotEmpty(ri.getVendorName(), success, failure));
82
83
84 failure = createResult(FAILURE, "Product name is not set!");
85 addResult(assertStringNotEmpty(ri.getProductName(), null, failure));
86
87 success = createResult(OK, "Product name: " + ri.getProductName());
88 failure = createResult(WARNING, "Product name is empty!");
89 addResult(assertStringNotEmpty(ri.getProductName(), success, failure));
90
91
92 failure = createResult(FAILURE, "Product version is not set!");
93 addResult(assertStringNotEmpty(ri.getProductVersion(), null, failure));
94
95 success = createResult(OK, "Product version: " + ri.getProductVersion());
96 failure = createResult(WARNING, "Product version is empty!");
97 addResult(assertStringNotEmpty(ri.getProductVersion(), success, failure));
98
99
100 success = createResult(OK, "CMIS Version Supported: " + ri.getCmisVersionSupported());
101 failure = createResult(FAILURE, "CMIS Version Supported is not set!");
102 addResult(assertStringNotEmpty(ri.getCmisVersionSupported(), success, failure));
103
104 failure = createResult(FAILURE, "CMIS Version Supported is not '1.0'!");
105 addResult(assertEquals("1.0", ri.getCmisVersionSupported(), null, failure));
106
107
108 success = createResult(OK, "Root folder id: " + ri.getRootFolderId());
109 failure = createResult(FAILURE, "Root folder id is not set!");
110 addResult(assertStringNotEmpty(ri.getRootFolderId(), success, failure));
111
112
113 success = createResult(OK, "Thin client URI: " + ri.getThinClientUri());
114 failure = createResult(WARNING, "Thin client URI is not set!");
115 addResult(assertStringNotEmpty(ri.getThinClientUri(), success, failure));
116
117
118 success = createResult(OK, "Principal Id anonymous: " + ri.getPrincipalIdAnonymous());
119 failure = createResult(WARNING, "Principal Id anonymous is not set!");
120 addResult(assertStringNotEmpty(ri.getPrincipalIdAnonymous(), success, failure));
121
122
123 success = createResult(OK, "Principal Id anyone: " + ri.getPrincipalIdAnyone());
124 failure = createResult(WARNING, "Principal Id anyone is not set!");
125 addResult(assertStringNotEmpty(ri.getPrincipalIdAnyone(), success, failure));
126
127
128 success = createResult(OK, "Latest change log token: " + ri.getLatestChangeLogToken());
129 failure = createResult(WARNING, "Latest change log token is not set!");
130 addResult(assertStringNotEmpty(ri.getLatestChangeLogToken(), success, failure));
131
132
133 success = createResult(OK, "Changes Incomplete: " + ri.getChangesIncomplete());
134 failure = createResult(WARNING, "Changes Incomplete is not set!");
135 addResult(assertNotNull(ri.getChangesIncomplete(), success, failure));
136
137
138 success = createResult(OK, "Changes on type: " + ri.getChangesOnType());
139 failure = createResult(WARNING, "Changes on type is not set!");
140 addResult(assertNotNull(ri.getChangesOnType(), success, failure));
141
142 if (ri.getChangesOnType() != null) {
143 failure = createResult(WARNING, "Changes on type has more than 4 entries!");
144 addResult(assertIsTrue(ri.getChangesOnType().size() < 5, null, failure));
145 }
146
147
148 if (ri.getCapabilities() == null) {
149 addResult(createResult(FAILURE, "Capabilities are not set!"));
150 } else {
151 RepositoryCapabilities cap = ri.getCapabilities();
152
153
154 success = createResult(OK, "ACL capability: " + cap.getAclCapability());
155 failure = createResult(FAILURE, "ACL capability is not set!");
156 addResult(assertNotNull(cap.getAclCapability(), success, failure));
157
158
159 success = createResult(OK, "Changes capability: " + cap.getChangesCapability());
160 failure = createResult(WARNING, "Changes capability is not set!");
161 addResult(assertNotNull(cap.getChangesCapability(), success, failure));
162
163
164 success = createResult(OK, "Content stream updates capability: " + cap.getContentStreamUpdatesCapability());
165 failure = createResult(FAILURE, "Content stream updates is not set!");
166 addResult(assertNotNull(cap.getContentStreamUpdatesCapability(), success, failure));
167
168
169 success = createResult(OK, "Get descendants capability: " + cap.isGetDescendantsSupported());
170 failure = createResult(FAILURE, "Get descendants capability is not set!");
171 addResult(assertNotNull(cap.isGetDescendantsSupported(), success, failure));
172
173
174 success = createResult(OK, "Get folder tree capability: " + cap.isGetFolderTreeSupported());
175 failure = createResult(FAILURE, "Get folder tree capability is not set!");
176 addResult(assertNotNull(cap.isGetFolderTreeSupported(), success, failure));
177
178
179 success = createResult(OK, "Multifiling capability: " + cap.isMultifilingSupported());
180 failure = createResult(FAILURE, "Multifiling capability is not set!");
181 addResult(assertNotNull(cap.isMultifilingSupported(), success, failure));
182
183
184 success = createResult(OK, "Unfiling capability: " + cap.isUnfilingSupported());
185 failure = createResult(FAILURE, "Unfiling capability is not set!");
186 addResult(assertNotNull(cap.isUnfilingSupported(), success, failure));
187
188
189 success = createResult(OK, "Version specific filing capability: " + cap.isVersionSpecificFilingSupported());
190 failure = createResult(FAILURE, "Version specific filing capability is not set!");
191 addResult(assertNotNull(cap.isVersionSpecificFilingSupported(), success, failure));
192
193
194 success = createResult(OK, "Query capability: " + cap.getQueryCapability());
195 failure = createResult(FAILURE, "Query capability is not set!");
196 addResult(assertNotNull(cap.getQueryCapability(), success, failure));
197
198
199 success = createResult(OK, "JOIN capability: " + cap.getJoinCapability());
200 failure = createResult(FAILURE, "JOIN capability is not set!");
201 addResult(assertNotNull(cap.getJoinCapability(), success, failure));
202
203
204 success = createResult(OK, "All versions searchable capability: " + cap.isAllVersionsSearchableSupported());
205 failure = createResult(FAILURE, "All versions searchable capability is not set!");
206 addResult(assertNotNull(cap.isAllVersionsSearchableSupported(), success, failure));
207
208
209 success = createResult(OK, "PWC searchable capability: " + cap.isPwcSearchableSupported());
210 failure = createResult(FAILURE, "PWC searchable capability is not set!");
211 addResult(assertNotNull(cap.isPwcSearchableSupported(), success, failure));
212
213
214 success = createResult(OK, "PWC updatable capability: " + cap.isPwcUpdatableSupported());
215 failure = createResult(FAILURE, "PWC updatable capability is not set!");
216 addResult(assertNotNull(cap.isPwcUpdatableSupported(), success, failure));
217
218
219 success = createResult(OK, "Renditions capability: " + cap.getRenditionsCapability());
220 failure = createResult(FAILURE, "Renditions capability is not set!");
221 addResult(assertNotNull(cap.getRenditionsCapability(), success, failure));
222 }
223
224
225 if (ri.getAclCapabilities() == null) {
226 addResult(createResult(WARNING, "ACL capabilities are not set!"));
227 } else {
228 AclCapabilities aclCap = ri.getAclCapabilities();
229
230
231 success = createResult(OK, "Supported permissions: " + aclCap.getSupportedPermissions());
232 failure = createResult(WARNING, "Supported permissions are not set!");
233 addResult(assertNotNull(aclCap.getSupportedPermissions(), success, failure));
234
235
236 success = createResult(OK, "ACL propagation: " + aclCap.getAclPropagation());
237 failure = createResult(WARNING, "ACL propagation is not set!");
238 addResult(assertNotNull(aclCap.getAclPropagation(), success, failure));
239
240
241 success = createResult(OK, "Permissions: "
242 + (aclCap.getPermissions() == null ? "?" : aclCap.getPermissions().size()));
243 failure = createResult(FAILURE, "Permissions are not set!");
244 addResult(assertNotNull(aclCap.getPermissions(), success, failure));
245
246 if (aclCap.getPermissions() != null) {
247 int i = 0;
248 for (PermissionDefinition permDef : aclCap.getPermissions()) {
249 failure = createResult(FAILURE, "Permission #" + i + " is not set!");
250 addResult(assertNotNull(permDef, null, failure));
251
252 if (permDef != null) {
253 failure = createResult(FAILURE, "Id of permission #" + i + " is not set!");
254 addResult(assertStringNotEmpty(permDef.getId(), null, failure));
255 }
256
257 i++;
258 }
259 }
260
261
262 success = createResult(OK, "Permission mapping: "
263 + (aclCap.getPermissionMapping() == null ? "?" : aclCap.getPermissionMapping().size()));
264 failure = createResult(WARNING, "Permission mapping is not set!");
265 addResult(assertNotNull(aclCap.getPermissionMapping(), success, failure));
266 }
267 }
268 }