groupdocs 0.2 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. data/lib/groupdocs.rb +1 -0
  2. data/lib/groupdocs/api.rb +0 -1
  3. data/lib/groupdocs/api/helpers.rb +3 -1
  4. data/lib/groupdocs/api/helpers/access_mode_helper.rb +32 -0
  5. data/lib/groupdocs/api/helpers/{access_helper.rb → credentials_helper.rb} +2 -23
  6. data/lib/groupdocs/api/helpers/path_helper.rb +28 -0
  7. data/lib/groupdocs/api/helpers/rest_helper.rb +1 -1
  8. data/lib/groupdocs/api/helpers/url_helper.rb +1 -1
  9. data/lib/groupdocs/api/request.rb +3 -3
  10. data/lib/groupdocs/datasource.rb +6 -6
  11. data/lib/groupdocs/document.rb +34 -34
  12. data/lib/groupdocs/document/annotation.rb +6 -6
  13. data/lib/groupdocs/document/annotation/reply.rb +5 -5
  14. data/lib/groupdocs/extensions.rb +1 -0
  15. data/lib/groupdocs/extensions/lookup.rb +52 -0
  16. data/lib/groupdocs/job.rb +13 -13
  17. data/lib/groupdocs/questionnaire.rb +14 -14
  18. data/lib/groupdocs/questionnaire/execution.rb +3 -3
  19. data/lib/groupdocs/questionnaire/page.rb +1 -1
  20. data/lib/groupdocs/questionnaire/question.rb +1 -1
  21. data/lib/groupdocs/storage.rb +1 -1
  22. data/lib/groupdocs/storage/file.rb +28 -25
  23. data/lib/groupdocs/storage/folder.rb +19 -27
  24. data/lib/groupdocs/storage/package.rb +1 -1
  25. data/lib/groupdocs/version.rb +1 -1
  26. data/spec/groupdocs/api/helpers/access_mode_helper_spec.rb +49 -0
  27. data/spec/groupdocs/api/helpers/{access_helper_spec.rb → credentials_helpers_spec.rb} +1 -42
  28. data/spec/groupdocs/api/helpers/path_helper_spec.rb +28 -0
  29. data/spec/groupdocs/document_spec.rb +1 -1
  30. data/spec/groupdocs/storage/file_spec.rb +23 -28
  31. data/spec/groupdocs/storage/folder_spec.rb +18 -18
  32. data/spec/support/shared_examples/api/helpers/access_mode_helper.rb +12 -0
  33. data/spec/support/shared_examples/{api/sugar → extensions}/lookup.rb +1 -1
  34. metadata +35 -26
  35. data/lib/groupdocs/api/sugar/lookup.rb +0 -57
@@ -0,0 +1,12 @@
1
+ shared_examples_for GroupDocs::Api::Helpers::AccessMode do
2
+ it { should respond_to(:access) }
3
+ it { should respond_to(:access=) }
4
+
5
+ describe '#access' do
6
+ it 'returns converted to human-readable format access mode' do
7
+ subject.should_receive(:parse_access_mode).with(1).and_return(:restricted)
8
+ subject.access = 1
9
+ subject.access.should == :restricted
10
+ end
11
+ end
12
+ end
@@ -1,4 +1,4 @@
1
- shared_examples_for GroupDocs::Api::Sugar::Lookup do
1
+ shared_examples_for GroupDocs::Extensions::Lookup do
2
2
  before(:each) do
3
3
  # make sure `name` attribute exists
4
4
  described_class.class_eval('attr_accessor :name')
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: groupdocs
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.2'
4
+ version: 0.2.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-05-03 00:00:00.000000000 Z
12
+ date: 2012-05-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rest-client
16
- requirement: &8547040 !ruby/object:Gem::Requirement
16
+ requirement: &8528280 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '1.6'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *8547040
24
+ version_requirements: *8528280
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: json
27
- requirement: &8562380 !ruby/object:Gem::Requirement
27
+ requirement: &8543080 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '1.7'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *8562380
35
+ version_requirements: *8543080
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: ruby-hmac
38
- requirement: &8560380 !ruby/object:Gem::Requirement
38
+ requirement: &8541540 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0.4'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *8560380
46
+ version_requirements: *8541540
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &8559100 !ruby/object:Gem::Requirement
49
+ requirement: &8539740 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '2.9'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *8559100
57
+ version_requirements: *8539740
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rake
60
- requirement: &8557700 !ruby/object:Gem::Requirement
60
+ requirement: &8538840 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0.9'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *8557700
68
+ version_requirements: *8538840
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: simplecov
71
- requirement: &8556680 !ruby/object:Gem::Requirement
71
+ requirement: &8537820 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0.6'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *8556680
79
+ version_requirements: *8537820
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: yard
82
- requirement: &8555240 !ruby/object:Gem::Requirement
82
+ requirement: &8536500 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ~>
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0.8'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *8555240
90
+ version_requirements: *8536500
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: webmock
93
- requirement: &8568120 !ruby/object:Gem::Requirement
93
+ requirement: &8549020 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ~>
@@ -98,7 +98,7 @@ dependencies:
98
98
  version: '1.8'
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *8568120
101
+ version_requirements: *8549020
102
102
  description: Ruby SDK for GroupDocs REST API
103
103
  email: p0deje@gmail.com
104
104
  executables: []
@@ -114,13 +114,14 @@ files:
114
114
  - lib/groupdocs/api.rb
115
115
  - lib/groupdocs/api/entity.rb
116
116
  - lib/groupdocs/api/helpers.rb
117
- - lib/groupdocs/api/helpers/access_helper.rb
117
+ - lib/groupdocs/api/helpers/access_mode_helper.rb
118
118
  - lib/groupdocs/api/helpers/actions_helper.rb
119
+ - lib/groupdocs/api/helpers/credentials_helper.rb
120
+ - lib/groupdocs/api/helpers/path_helper.rb
119
121
  - lib/groupdocs/api/helpers/rest_helper.rb
120
122
  - lib/groupdocs/api/helpers/status_helper.rb
121
123
  - lib/groupdocs/api/helpers/url_helper.rb
122
124
  - lib/groupdocs/api/request.rb
123
- - lib/groupdocs/api/sugar/lookup.rb
124
125
  - lib/groupdocs/datasource.rb
125
126
  - lib/groupdocs/datasource/field.rb
126
127
  - lib/groupdocs/document.rb
@@ -132,6 +133,8 @@ files:
132
133
  - lib/groupdocs/document/rectangle.rb
133
134
  - lib/groupdocs/document/view.rb
134
135
  - lib/groupdocs/errors.rb
136
+ - lib/groupdocs/extensions.rb
137
+ - lib/groupdocs/extensions/lookup.rb
135
138
  - lib/groupdocs/job.rb
136
139
  - lib/groupdocs/questionnaire.rb
137
140
  - lib/groupdocs/questionnaire/execution.rb
@@ -145,8 +148,10 @@ files:
145
148
  - lib/groupdocs/user.rb
146
149
  - lib/groupdocs/version.rb
147
150
  - spec/groupdocs/api/entity_spec.rb
148
- - spec/groupdocs/api/helpers/access_helper_spec.rb
151
+ - spec/groupdocs/api/helpers/access_mode_helper_spec.rb
149
152
  - spec/groupdocs/api/helpers/actions_helper_spec.rb
153
+ - spec/groupdocs/api/helpers/credentials_helpers_spec.rb
154
+ - spec/groupdocs/api/helpers/path_helper_spec.rb
150
155
  - spec/groupdocs/api/helpers/rest_helper_spec.rb
151
156
  - spec/groupdocs/api/helpers/status_helper_spec.rb
152
157
  - spec/groupdocs/api/helpers/url_helper_spec.rb
@@ -231,8 +236,9 @@ files:
231
236
  - spec/support/json/questionnaires_get.json
232
237
  - spec/support/json/storage_info.json
233
238
  - spec/support/shared_examples/api/entity.rb
239
+ - spec/support/shared_examples/api/helpers/access_mode_helper.rb
234
240
  - spec/support/shared_examples/api/helpers/status_helper.rb
235
- - spec/support/shared_examples/api/sugar/lookup.rb
241
+ - spec/support/shared_examples/extensions/lookup.rb
236
242
  homepage: https://github.com/groupdocs/groupdocs-ruby
237
243
  licenses: []
238
244
  post_install_message:
@@ -247,7 +253,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
247
253
  version: '0'
248
254
  segments:
249
255
  - 0
250
- hash: 1799839413682321856
256
+ hash: 4127866239273526889
251
257
  required_rubygems_version: !ruby/object:Gem::Requirement
252
258
  none: false
253
259
  requirements:
@@ -256,7 +262,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
256
262
  version: '0'
257
263
  segments:
258
264
  - 0
259
- hash: 1799839413682321856
265
+ hash: 4127866239273526889
260
266
  requirements: []
261
267
  rubyforge_project:
262
268
  rubygems_version: 1.8.10
@@ -265,8 +271,10 @@ specification_version: 3
265
271
  summary: Ruby SDK for GroupDocs REST API
266
272
  test_files:
267
273
  - spec/groupdocs/api/entity_spec.rb
268
- - spec/groupdocs/api/helpers/access_helper_spec.rb
274
+ - spec/groupdocs/api/helpers/access_mode_helper_spec.rb
269
275
  - spec/groupdocs/api/helpers/actions_helper_spec.rb
276
+ - spec/groupdocs/api/helpers/credentials_helpers_spec.rb
277
+ - spec/groupdocs/api/helpers/path_helper_spec.rb
270
278
  - spec/groupdocs/api/helpers/rest_helper_spec.rb
271
279
  - spec/groupdocs/api/helpers/status_helper_spec.rb
272
280
  - spec/groupdocs/api/helpers/url_helper_spec.rb
@@ -351,6 +359,7 @@ test_files:
351
359
  - spec/support/json/questionnaires_get.json
352
360
  - spec/support/json/storage_info.json
353
361
  - spec/support/shared_examples/api/entity.rb
362
+ - spec/support/shared_examples/api/helpers/access_mode_helper.rb
354
363
  - spec/support/shared_examples/api/helpers/status_helper.rb
355
- - spec/support/shared_examples/api/sugar/lookup.rb
364
+ - spec/support/shared_examples/extensions/lookup.rb
356
365
  has_rdoc:
@@ -1,57 +0,0 @@
1
- module GroupDocs
2
- module Api
3
- module Sugar
4
- #
5
- # Extends classes providing them with .find! and .find_all! class methods
6
- # which is a bit of sugar for working with files, folder and documents,
7
- #
8
- # It's not that flexible because requires extending class to implement
9
- # .all! class method.
10
- #
11
- # This module is a subject to modifications.
12
- #
13
- module Lookup
14
-
15
- #
16
- # Returns first object matching given options.
17
- #
18
- # @param [Symbol] attribute
19
- # @param [Integer, String, Regexp] value
20
- # @param [Hash] access Access credentials
21
- # @option access [String] :client_id
22
- # @option access [String] :private_key
23
- # @return [GroupDocs::Api::Entity] Matching entity
24
- #
25
- def find!(attribute, value, access = {})
26
- find_all!(attribute, value, access).first
27
- end
28
-
29
- #
30
- # Returns all objects matching given options.
31
- #
32
- # Each entity has to implement #all! method for this to work.
33
- #
34
- # @param [Symbol] attribute
35
- # @param [Integer, String, Regexp] value
36
- # @param [Hash] access Access credentials
37
- # @option access [String] :client_id
38
- # @option access [String] :private_key
39
- # @return [Array] Array of matching entities
40
- #
41
- # @raise [NoMethodError] if extending class does not implement .all! class method.
42
- #
43
- def find_all!(attribute, value, access = {})
44
- respond_to?(:all!) or raise NoMethodError, "#{self}.all! is not implemented - aborting."
45
-
46
- all!('/', access).select do |object|
47
- case value
48
- when Regexp then object.send(attribute) =~ value
49
- else object.send(attribute) == value
50
- end
51
- end
52
- end
53
-
54
- end # Lookup
55
- end # Sugar
56
- end # Api
57
- end # GroupDocs