yaccl 0.1.5 → 1.0.pre.alpha

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/lib/yaccl/children.rb +55 -0
  3. data/lib/yaccl/connection.rb +147 -0
  4. data/lib/yaccl/document.rb +62 -0
  5. data/lib/yaccl/folder.rb +76 -0
  6. data/lib/yaccl/helpers.rb +59 -0
  7. data/lib/yaccl/item.rb +11 -0
  8. data/lib/yaccl/object.rb +122 -0
  9. data/lib/yaccl/object_factory.rb +27 -0
  10. data/lib/yaccl/policy.rb +26 -0
  11. data/lib/yaccl/property_definition.rb +32 -0
  12. data/lib/yaccl/query.rb +53 -0
  13. data/lib/yaccl/query_result.rb +15 -0
  14. data/lib/yaccl/relationship.rb +18 -0
  15. data/lib/yaccl/repository.rb +108 -0
  16. data/lib/yaccl/server.rb +37 -0
  17. data/lib/yaccl/type.rb +106 -0
  18. data/lib/yaccl/version.rb +1 -1
  19. data/lib/yaccl.rb +21 -11
  20. data/readme.md +0 -3
  21. data/spec/{model/document_spec.rb → document_spec.rb} +4 -4
  22. data/spec/{model/folder_spec.rb → folder_spec.rb} +6 -6
  23. data/spec/helper.rb +12 -12
  24. data/spec/{model/object_spec.rb → object_spec.rb} +6 -6
  25. data/spec/relationship_spec.rb +19 -0
  26. data/spec/repository_spec.rb +150 -0
  27. data/spec/server_spec.rb +22 -0
  28. data/spec/{model/type_spec.rb → type_spec.rb} +6 -4
  29. data/yaccl.gemspec +1 -0
  30. metadata +48 -50
  31. data/examples/create_type_manual.rb +0 -40
  32. data/lib/yaccl/model/document.rb +0 -68
  33. data/lib/yaccl/model/folder.rb +0 -74
  34. data/lib/yaccl/model/item.rb +0 -9
  35. data/lib/yaccl/model/object.rb +0 -159
  36. data/lib/yaccl/model/object_factory.rb +0 -24
  37. data/lib/yaccl/model/policy.rb +0 -20
  38. data/lib/yaccl/model/property_definition.rb +0 -66
  39. data/lib/yaccl/model/relationship.rb +0 -22
  40. data/lib/yaccl/model/repository.rb +0 -155
  41. data/lib/yaccl/model/server.rb +0 -13
  42. data/lib/yaccl/model/type.rb +0 -146
  43. data/lib/yaccl/model.rb +0 -11
  44. data/lib/yaccl/services/acl_services.rb +0 -23
  45. data/lib/yaccl/services/discovery_services.rb +0 -29
  46. data/lib/yaccl/services/internal/browser_binding_service.rb +0 -170
  47. data/lib/yaccl/services/internal/simple_cache.rb +0 -103
  48. data/lib/yaccl/services/multi_filing_services.rb +0 -22
  49. data/lib/yaccl/services/navigation_services.rb +0 -84
  50. data/lib/yaccl/services/object_services.rb +0 -211
  51. data/lib/yaccl/services/policy_services.rb +0 -30
  52. data/lib/yaccl/services/relationship_services.rb +0 -18
  53. data/lib/yaccl/services/repository_services.rb +0 -67
  54. data/lib/yaccl/services/versioning_services.rb +0 -69
  55. data/lib/yaccl/services.rb +0 -34
  56. data/spec/model/relationship_spec.rb +0 -15
  57. data/spec/model/repository_spec.rb +0 -138
  58. data/spec/model/server_spec.rb +0 -16
  59. data/spec/services/navigation_services_spec.rb +0 -64
  60. data/spec/services/object_services_spec.rb +0 -44
  61. data/spec/services/repository_services_spec.rb +0 -35
@@ -1,84 +0,0 @@
1
- module YACCL
2
- module NavigationServices
3
- def get_children(repository_id, folder_id, filter, order_by, include_allowable_actions, include_relationships, rendition_filter, include_path_segment, max_items, skip_count, succinct=false)
4
- required = {succinct: succinct,
5
- cmisselector: 'children',
6
- repositoryId: repository_id,
7
- objectId: folder_id}
8
- optional = {filter: filter,
9
- orderBy: order_by,
10
- includeAllowableActions: include_allowable_actions,
11
- includeRelationships: include_relationships,
12
- renditionFilter: rendition_filter,
13
- includePathSegment: include_path_segment,
14
- maxItems: max_items,
15
- skipCount: skip_count}
16
- perform_request(required, optional)
17
- end
18
-
19
- def get_descendants(repository_id, folder_id, depth, filter, include_allowable_actions, include_relationships, rendition_filter, include_path_segment, succinct=false)
20
- required = {succinct: succinct,
21
- cmisselector: 'descendants',
22
- repositoryId: repository_id,
23
- objectId: folder_id}
24
- optional = {depth: depth,
25
- filter: filter,
26
- includeAllowableActions: include_allowable_actions,
27
- includeRelationships: include_relationships,
28
- renditionFilter: rendition_filter,
29
- includePathSegment: include_path_segment}
30
- perform_request(required, optional)
31
- end
32
-
33
- def get_folder_tree(repository_id, folder_id, depth, filter, include_allowable_actions, include_relationships, rendition_filter, include_path_segment, succinct=false)
34
- required = {succinct: succinct,
35
- cmisselector: 'folderTree',
36
- repositoryId: repository_id,
37
- objectId: folder_id}
38
- optional = {depth: depth,
39
- filter: filter,
40
- includeAllowableActions: include_allowable_actions,
41
- includeRelationships: include_relationships,
42
- renditionFilter: rendition_filter,
43
- includePathSegment: include_path_segment}
44
- perform_request(required, optional)
45
- end
46
-
47
- def get_folder_parent(repository_id, folder_id, filter, succinct=false)
48
- required = {succinct: succinct,
49
- cmisselector: 'parent',
50
- repositoryId: repository_id,
51
- objectId: folder_id}
52
- optional = {filter: filter}
53
- perform_request(required, optional)
54
- end
55
-
56
- def get_object_parents(repository_id, cmis_object_id, filter, include_allowable_actions, include_relationships, rendition_filter, include_relative_path_segment, succinct=false)
57
- required = {succinct: succinct,
58
- cmisselector: 'parents',
59
- repositoryId: repository_id,
60
- objectId: cmis_object_id}
61
- optional = {filter: filter,
62
- includeAllowableActions: include_allowable_actions,
63
- includeRelationships: include_relationships,
64
- renditionFilter: rendition_filter,
65
- includeRelativePathSegment: include_relative_path_segment}
66
- perform_request(required, optional)
67
- end
68
-
69
- def get_checked_out_docs(repository_id, folder_id, filter, order_by, include_allowable_actions, include_relationships, rendition_filter, max_items, skip_count, succinct=false)
70
- required = {succinct: succinct,
71
- cmisselector: 'checkedout',
72
- repositoryId: repository_id}
73
- optional = {objectId: folder_id,
74
- filter: filter,
75
- orderBy: order_by,
76
- includeAllowableActions: include_allowable_actions,
77
- includeRelationships: include_relationships,
78
- renditionFilter: rendition_filter,
79
- maxItems: max_items,
80
- skipCount: skip_count}
81
- perform_request(required, optional)
82
- end
83
- end
84
- end
@@ -1,211 +0,0 @@
1
- module YACCL
2
- module ObjectServices
3
- def get_object(repository_id, cmis_object_id, filter, include_allowable_actions, include_relationships, rendition_filter, include_policy_ids, include_acl, succinct=false)
4
- required = {succinct: succinct,
5
- cmisselector: 'object',
6
- repositoryId: repository_id,
7
- objectId: cmis_object_id}
8
- optional = {filter: filter,
9
- includeAllowableActions: include_allowable_actions,
10
- includeRelationships: include_relationships,
11
- renditionFilter: rendition_filter,
12
- includePolicyIds: include_policy_ids,
13
- includeAcl: include_acl}
14
- perform_request(required, optional)
15
- end
16
-
17
- def get_properties(repository_id, cmis_object_id, filter, succinct=false)
18
- required = {succinct: succinct,
19
- cmisselector: 'properties',
20
- repositoryId: repository_id,
21
- objectId: cmis_object_id}
22
- optional = {filter: filter}
23
- perform_request(required, optional)
24
- end
25
-
26
- def create_document(repository_id, properties, folder_id, content, versioning_state, policies, add_aces, remove_aces, succinct=false)
27
- required = {succinct: succinct,
28
- cmisaction: 'createDocument',
29
- repositoryId: repository_id,
30
- properties: properties,
31
- objectId: folder_id}
32
- optional = {folderId: folder_id,
33
- content: content,
34
- versioningState: versioning_state,
35
- policies: policies,
36
- addACEs: add_aces,
37
- removeACEs: remove_aces}
38
- perform_request(required, optional)
39
- end
40
-
41
- def create_document_from_source(repository_id, source_id, properties, folder_id, versioning_state, policies, add_aces, remove_aces, succinct=false)
42
- required = {succinct: succinct,
43
- cmisaction: 'createDocument',
44
- repositoryId: repository_id,
45
- sourceId: source_id}
46
- optional = {properties: properties,
47
- objectId: folder_id,
48
- versioningState: versioning_state,
49
- policies: policies,
50
- addACEs: add_aces,
51
- removeACEs: remove_aces}
52
- perform_request(required, optional)
53
- end
54
-
55
- def create_folder(repository_id, properties, folder_id, policies, add_aces, remove_aces, succinct=false)
56
- required = {succinct: succinct,
57
- cmisaction: 'createFolder',
58
- repositoryId: repository_id,
59
- properties: properties,
60
- objectId: folder_id}
61
- optional = {policies: policies,
62
- addACEs: add_aces,
63
- removeACEs: remove_aces}
64
- perform_request(required, optional)
65
- end
66
-
67
- def create_relationship(repository_id, properties, policies, add_aces, remove_aces, succinct=false)
68
- required = {succinct: succinct,
69
- cmisaction: 'createRelationship',
70
- repositoryId: repository_id,
71
- properties: properties}
72
- optional = {policies: policies,
73
- addACEs: add_aces,
74
- removeACEs: remove_aces}
75
- perform_request(required, optional)
76
- end
77
-
78
- def create_policy(repository_id, properties, folder_id, policies, add_aces, remove_aces, succinct=false)
79
- required = {succinct: succinct,
80
- cmisaction: 'createPolicy',
81
- repositoryId: repository_id,
82
- properties: properties}
83
- optional = {objectId: folder_id,
84
- policies: policies,
85
- addACEs: add_aces,
86
- removeACEs: remove_aces}
87
- perform_request(required, optional)
88
- end
89
-
90
- def create_item(repository_id, properties, folder_id, policies, add_aces, remove_aces, succinct=false)
91
- required = {succinct: succinct,
92
- cmisaction: 'createItem',
93
- repositoryId: repository_id,
94
- properties: properties}
95
- optional = {objectId: folder_id,
96
- policies: policies,
97
- addACEs: add_aces,
98
- removeACEs: remove_aces}
99
- perform_request(required, optional)
100
- end
101
-
102
- def get_allowable_actions(repository_id, cmis_object_id, succinct=false)
103
- required = {succinct: succinct,
104
- cmisselector: 'allowableActions',
105
- repositoryId: repository_id,
106
- objectId: cmis_object_id}
107
- perform_request(required)
108
- end
109
-
110
- def get_renditions(repository_id, cmis_object_id, rendition_filter, max_items, skip_count, succinct=false)
111
- required = {succinct: succinct,
112
- cmisselector: 'renditions',
113
- repositoryId: repository_id,
114
- objectId: cmis_object_id}
115
- optional = {renditionFilter: rendition_filter,
116
- maxItems: max_items,
117
- skipCount: skip_count}
118
- perform_request(required, optional)
119
- end
120
-
121
- def get_object_by_path(repository_id, path, filter, include_allowable_actions, include_relationships, rendition_filter, include_policy_ids, include_acl, succinct=false)
122
- raise 'Not supported.'
123
- end
124
-
125
- def get_content_stream(repository_id, cmis_object_id, stream_id, offset, length, succinct=false)
126
- required = {succinct: succinct,
127
- cmisselector: 'content',
128
- repositoryId: repository_id,
129
- objectId: cmis_object_id}
130
- optional = {streamId: stream_id,
131
- offset: offset,
132
- length: length}
133
- perform_request(required, optional)
134
- end
135
-
136
- def update_properties(repository_id, cmis_object_id, change_token, properties, succinct=false)
137
- required = {succinct: succinct,
138
- cmisaction: 'update',
139
- repositoryId: repository_id,
140
- objectId: cmis_object_id,
141
- properties: properties}
142
- optional = {changeToken: change_token}
143
- perform_request(required, optional)
144
- end
145
-
146
- def bulk_update_properties(repository_id, cmis_object_ids_and_change_tokens, properties, add_secondary_type_ids, remove_secondary_type_ids, succinct=false)
147
- # TODO
148
- end
149
-
150
- def move_object(repository_id, cmis_object_id, target_folder_id, source_folder_id, succinct=false)
151
- required = {succinct: succinct,
152
- cmisaction: 'move',
153
- repositoryId: repository_id,
154
- objectId: cmis_object_id,
155
- targetFolderId: target_folder_id,
156
- sourceFolderId: source_folder_id}
157
- perform_request(required)
158
- end
159
-
160
- def delete_object(repository_id, cmis_object_id, all_versions, succinct=false)
161
- required = {succinct: succinct,
162
- cmisaction: 'delete',
163
- repositoryId: repository_id,
164
- objectId: cmis_object_id}
165
- optional = {allVersions: all_versions}
166
- perform_request(required, optional)
167
- end
168
-
169
- def delete_tree(repository_id, folder_id, all_versions, unfile_objects, continue_on_failure, succinct=false)
170
- required = {succinct: succinct,
171
- cmisaction: 'deleteTree',
172
- repositoryId: repository_id,
173
- objectId: folder_id}
174
- optional = {allVersions: all_versions,
175
- unfileObjects: unfile_objects,
176
- continueOnFailure: continue_on_failure}
177
- perform_request(required, optional)
178
- end
179
-
180
- def set_content_stream(repository_id, cmis_object_id, overwrite_flag, change_token, content, succinct=false)
181
- required = {succinct: succinct,
182
- cmisaction: 'setContent',
183
- repositoryId: repository_id,
184
- objectId: cmis_object_id,
185
- content: content}
186
- optional = {overwriteFlag: overwrite_flag,
187
- changeToken:change_token}
188
- perform_request(required, optional)
189
- end
190
-
191
- def delete_content_stream(repository_id, cmis_object_id, change_token, succinct=false)
192
- required = {succinct: succinct,
193
- cmisaction: 'deleteContent',
194
- repositoryId: repository_id,
195
- objectId: cmis_object_id}
196
- optional = {changeToken: change_token}
197
- perform_request(required, optional)
198
- end
199
-
200
- def append_content_stream(repository_id, cmis_object_id, change_token, content, is_last_chunk, succinct=false)
201
- required = {succinct: succinct,
202
- cmisaction: 'appendContent',
203
- repositoryId: repository_id,
204
- objectId: cmis_object_id,
205
- content: content}
206
- optional = {isLastChunk: is_last_chunk,
207
- changeToken: change_token}
208
- perform_request(required, optional)
209
- end
210
- end
211
- end
@@ -1,30 +0,0 @@
1
- module YACCL
2
- module PolicyServices
3
- def apply_policy(repository_id, policy_id, cmis_object_id, succinct=false)
4
- required = {succinct: succinct,
5
- cmisaction: 'applyPolicy',
6
- repositoryId: repository_id,
7
- policyId: policy_id,
8
- objectId: cmis_object_id}
9
- perform_request(required)
10
- end
11
-
12
- def remove_policy(repository_id, policy_id, cmis_object_id, succinct=false)
13
- required = {succinct: succinct,
14
- cmisaction: 'removePolicy',
15
- repositoryId: repository_id,
16
- policyId: policy_id,
17
- objectId: cmis_object_id}
18
- perform_request(required)
19
- end
20
-
21
- def get_applied_policies(repository_id, cmis_object_id, filter, succinct=false)
22
- required = {succinct: succinct,
23
- cmisselector: 'policies',
24
- repositoryId: repository_id,
25
- objectId: cmis_object_id}
26
- optional = {filter: filter}
27
- perform_request(required, optional)
28
- end
29
- end
30
- end
@@ -1,18 +0,0 @@
1
- module YACCL
2
- module RelationshipServices
3
- def get_object_relationships(repository_id, cmis_object_id, include_sub_relationship_types, relationship_direction, type_id, filter, include_allowable_actions, max_items, skip_count, succinct=false)
4
- required = {succinct: succinct,
5
- cmisselector: 'relationships',
6
- repositoryId: repository_id,
7
- objectId: cmis_object_id}
8
- optional = {includeSubRelationshipTypes: include_sub_relationship_types,
9
- relationshipDirection: relationship_direction,
10
- typeId: type_id,
11
- filter: filter,
12
- includeAllowableActions: include_allowable_actions,
13
- maxItems: max_items,
14
- skipCount: skip_count}
15
- perform_request(required, optional)
16
- end
17
- end
18
- end
@@ -1,67 +0,0 @@
1
- module YACCL
2
- module RepositoryServices
3
- def get_repositories
4
- perform_request
5
- end
6
-
7
- def get_repository_info(repository_id, succinct=false)
8
- required = {succinct: succinct,
9
- cmisselector: 'repositoryInfo',
10
- repositoryId: repository_id}
11
- perform_request(required)
12
- end
13
-
14
- def get_type_children(repository_id, type_id, include_property_definitions, max_items, skip_count, succinct=false)
15
- required = {succinct: succinct,
16
- cmisselector: 'typeChildren',
17
- repositoryId: repository_id}
18
- optional = {typeId: type_id,
19
- includePropertyDefinitions: include_property_definitions,
20
- maxItems: max_items,
21
- skipCount: skip_count}
22
- perform_request(required, optional)
23
- end
24
-
25
- def get_type_descendants(repository_id, type_id, depth, include_property_definitions, succinct=false)
26
- required = {succinct: succinct,
27
- cmisselector: 'typeDescendants',
28
- repositoryId: repository_id}
29
- optional = {typeId: type_id,
30
- depth: depth,
31
- includePropertyDefinitions: include_property_definitions}
32
- perform_request(required, optional)
33
- end
34
-
35
- def get_type_definition(repository_id, type_id, succinct=false)
36
- required = {succinct: succinct,
37
- cmisselector: 'typeDefinition',
38
- repositoryId: repository_id,
39
- typeId: type_id}
40
- perform_request(required)
41
- end
42
-
43
- def create_type(repository_id, type, succinct=false)
44
- required = {succinct: succinct,
45
- cmisaction: 'createType',
46
- repositoryId: repository_id,
47
- type: MultiJson.dump(type)}
48
- perform_request(required)
49
- end
50
-
51
- def update_type(repository_id, type, succinct=false)
52
- required = {succinct: succinct,
53
- cmisaction: 'updateType',
54
- repositoryId: repository_id,
55
- type: MultiJson.dump(type)}
56
- perform_request(required)
57
- end
58
-
59
- def delete_type(repository_id, type_id, succinct=false)
60
- required = {succinct: succinct,
61
- cmisaction: 'deleteType',
62
- repositoryId: repository_id,
63
- typeId: type_id}
64
- perform_request(required)
65
- end
66
- end
67
- end
@@ -1,69 +0,0 @@
1
- module YACCL
2
- module VersioningServices # TODO Check 'version_series_id' confusion.
3
- def check_out(repository_id, cmis_object_id, succinct=false)
4
- required = {succinct: succinct,
5
- cmisaction: 'checkOut',
6
- repositoryId: repository_id,
7
- objectId: cmis_object_id}
8
- perform_request(required)
9
- end
10
-
11
- def cancel_check_out(repository_id, cmis_object_id, succinct=false)
12
- required = {succinct: succinct,
13
- cmisaction: 'cancelCheckOut',
14
- repositoryId: repository_id,
15
- objectId: cmis_object_id}
16
- perform_request(required)
17
- end
18
-
19
- def check_in(repository_id, cmis_object_id, major, properties, content, checkin_comment, policies, add_aces, remove_aces, succinct=false)
20
- required = {succinct: succinct,
21
- cmisaction: 'checkIn',
22
- repositoryId: repository_id,
23
- objectId: cmis_object_id}
24
- optional = {major: major,
25
- properties: properties,
26
- content: content,
27
- checkinComment: checkin_comment,
28
- policies: policies,
29
- addACEs: add_aces,
30
- removeACEs: remove_aces}
31
- perform_request(required, optional)
32
- end
33
-
34
- def get_object_of_latest_version(repository_id, version_series_id, major, filter, include_allowable_actions, include_relationships, rendition_filter, include_policy_ids, include_acl, succinct=false)
35
- required = {succinct: succinct,
36
- cmisselector: 'object',
37
- repositoryId: repository_id,
38
- objectId: version_series_id}
39
- optional = {major: major,
40
- filter: filter,
41
- includeAllowableActions: include_allowable_actions,
42
- includeRelationships: include_relationships,
43
- renditionFilter: rendition_filter,
44
- includePolicyIds: include_policy_ids,
45
- includeACL: include_acl}
46
- perform_request(required, optional)
47
- end
48
-
49
- def get_properties_of_latest_version(repository_id, version_series_id, major, filter, succinct=false)
50
- required = {succinct: succinct,
51
- cmisselector: 'properties',
52
- repositoryId: repository_id,
53
- objectId: version_series_id}
54
- optional = {major: major,
55
- filter: filter}
56
- perform_request(required, optional)
57
- end
58
-
59
- def get_all_versions(repository_id, version_series_id, filter, include_allowable_actions, succinct=false)
60
- required = {succinct: succinct,
61
- cmisselector: 'versions',
62
- repositoryId: repository_id,
63
- objectId: version_series_id}
64
- optional = {filter: filter,
65
- includeAllowableActions: include_allowable_actions}
66
- perform_request(required, optional)
67
- end
68
- end
69
- end
@@ -1,34 +0,0 @@
1
- require 'yaccl/services/internal/browser_binding_service'
2
- require 'yaccl/services/repository_services'
3
- require 'yaccl/services/navigation_services'
4
- require 'yaccl/services/object_services'
5
- require 'yaccl/services/multi_filing_services'
6
- require 'yaccl/services/discovery_services'
7
- require 'yaccl/services/versioning_services'
8
- require 'yaccl/services/relationship_services'
9
- require 'yaccl/services/policy_services'
10
- require 'yaccl/services/acl_services'
11
-
12
- module YACCL
13
- module Services
14
- class << self
15
- def perform_request(*params)
16
- service = Internal::BrowserBindingService.new(YACCL::SERVICE_URL,
17
- YACCL::BASIC_AUTH_USERNAME,
18
- YACCL::BASIC_AUTH_PASSWORD,
19
- YACCL::SUCCINCT_PROPERTIES)
20
- service.perform_request(*params)
21
- end
22
-
23
- include RepositoryServices
24
- include NavigationServices
25
- include ObjectServices
26
- include MultiFilingServices
27
- include DiscoveryServices
28
- include VersioningServices
29
- include RelationshipServices
30
- include PolicyServices
31
- include ACLServices
32
- end
33
- end
34
- end
@@ -1,15 +0,0 @@
1
- require_relative '../helper'
2
-
3
- describe YACCL::Model::Relationship do
4
-
5
- it 'should make properties accessible through method' do
6
- new_object = YACCL::Model::Relationship.new('repoId', {succinctProperties: {myProp: 'myValue'}})
7
- new_object.myProp.should eq 'myValue'
8
- end
9
-
10
- it 'should raise methodmissing for unknown property' do
11
- new_object = YACCL::Model::Relationship.new('repoId', {succinctProperties: {'myProp' => 'myValue'}})
12
- expect {new_object.myOtherProp}.to raise_error(NoMethodError, /undefined method `myOtherProp'/)
13
- end
14
-
15
- end
@@ -1,138 +0,0 @@
1
- require_relative '../helper'
2
-
3
- describe YACCL::Model::Repository do
4
-
5
- context 'generic' do
6
- before do
7
- @id = 'meta'
8
- @repo = YACCL::Model::Server.repository(@id)
9
- end
10
-
11
- it 'id' do
12
- @repo.id.should.eql? @id
13
- end
14
-
15
- it 'fields' do
16
- @repo.id.should_not be_nil
17
- @repo.name.should_not be_nil
18
- @repo.product_version.should_not be_nil
19
- @repo.description.should_not be_nil
20
- @repo.root_folder_id.should_not be_nil
21
- @repo.capabilities.should_not be_nil
22
- @repo.url.should_not be_nil
23
- @repo.changes_on_type.should_not be_nil
24
- @repo.root_folder_url.should_not be_nil
25
- @repo.product_name.should_not be_nil
26
- @repo.product_version.should_not be_nil
27
-
28
- %w(1.0 1.1).should include @repo.cmis_version_supported
29
- end
30
-
31
- it 'new object' do
32
- @repo.new_folder.should be_a_kind_of YACCL::Model::Folder
33
- @repo.new_document.should be_a_kind_of YACCL::Model::Document
34
- @repo.new_relationship.should be_a_kind_of YACCL::Model::Relationship
35
- @repo.new_policy.should be_a_kind_of YACCL::Model::Policy
36
- @repo.new_item.should be_a_kind_of YACCL::Model::Item
37
- end
38
-
39
- it 'root' do
40
- root = @repo.root
41
- root.should be_a_kind_of YACCL::Model::Folder
42
- root.cmis_object_id.should eq @repo.root_folder_id
43
- end
44
-
45
- it 'object' do
46
- id = @repo.root_folder_id
47
- object = @repo.object(id)
48
- object.should be_a_kind_of YACCL::Model::Folder
49
- object.cmis_object_id.should eq id
50
- end
51
-
52
- it 'type - document' do
53
- document = @repo.type('cmis:document')
54
- document.should be_a_kind_of YACCL::Model::Type
55
- document.id.should eq 'cmis:document'
56
- end
57
-
58
- it 'type - folder' do
59
- folder = @repo.type('cmis:folder')
60
- folder.should be_a_kind_of YACCL::Model::Type
61
- folder.id.should eq 'cmis:folder'
62
- end
63
- end
64
-
65
- context 'upn' do
66
- before :all do
67
- @repo = create_repository('testrepository')
68
- end
69
-
70
- after :all do
71
- delete_repository('testrepository')
72
- end
73
-
74
- it 'type - relationship' do
75
- relationship = @repo.type('cmis:relationship')
76
- relationship.should be_a_kind_of YACCL::Model::Type
77
- relationship.id.should eq 'cmis:relationship'
78
- end
79
-
80
- it 'type - policy' do
81
- policy = @repo.type('cmis:policy')
82
- policy.should be_a_kind_of YACCL::Model::Type
83
- policy.id.should eq 'cmis:policy'
84
- end
85
-
86
- it 'type - item' do
87
- begin
88
- item = @repo.type('cmis:item')
89
- item.should be_a_kind_of YACCL::Model::Type
90
- item.id.should eq 'cmis:item'
91
- end unless @repo.cmis_version_supported < '1.1'
92
- end
93
-
94
- it 'create, get, delete type - document' do
95
- begin
96
- type_id = 'apple'
97
-
98
- type = YACCL::Model::Type.new
99
- type.id = type_id
100
- type.local_name = 'apple'
101
- type.query_name = 'apple'
102
- type.display_name = 'apple'
103
- type.parent_id = 'cmis:document'
104
- type.base_id = 'cmis:document'
105
- type.description = 'appel'
106
- type.creatable = true
107
- type.fileable = true
108
- type.queryable = true
109
- type.controllable_policy = true
110
- type.controllable_acl = true
111
- type.fulltext_indexed = true
112
- type.included_in_supertype_query = true
113
- type.content_stream_allowed = 'allowed'
114
- type.versionable = false
115
-
116
- type.add_property_definition(id: 'color',
117
- localName: 'color',
118
- queryName: 'color',
119
- displayName: 'color',
120
- description: 'color',
121
- propertyType: 'string',
122
- cardinality: 'single',
123
- updatability: 'readwrite',
124
- inherited: false,
125
- required: false,
126
- queryable: true,
127
- orderable: true)
128
-
129
- @repo.create_type(type)
130
- @repo.type(type_id).tap do |t|
131
- t.should be_a_kind_of YACCL::Model::Type
132
- t.id.should eq type_id
133
- end
134
- @repo.type(type_id).delete
135
- end unless @repo.cmis_version_supported < '1.1'
136
- end
137
- end
138
- end
@@ -1,16 +0,0 @@
1
- require_relative '../helper'
2
-
3
- describe YACCL::Model::Server do
4
- it 'repositories' do
5
- YACCL::Model::Server.repositories.each do |repo|
6
- repo.should be_a_kind_of YACCL::Model::Repository
7
- end
8
- end
9
-
10
- it 'repository' do
11
- id = 'meta'
12
- repo = YACCL::Model::Server.repository(id)
13
- repo.should be_a_kind_of YACCL::Model::Repository
14
- repo.id.should eq id
15
- end
16
- end