docraptor 1.0.0 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,13 @@
1
1
  {
2
- "gemName": "docraptor",
3
- "moduleName": "DocRaptor",
4
- "gemVersion": "1.0.0"
2
+ "gemName": "docraptor",
3
+ "moduleName": "DocRaptor",
4
+ "gemVersion": "1.4.0",
5
+ "gemAuthor": "Expected Behavior",
6
+ "gemAuthorEmail": "support@docraptor.com",
7
+ "gemHomepage": "https://github.com/docraptor/docraptor-ruby",
8
+ "gemSummary": "A wrapper for the DocRaptor HTML to PDF/XLS service.",
9
+ "gemDescription": "A native client library for the DocRaptor HTML to PDF/XLS service.",
10
+ "gemLicense": "MIT",
11
+ "hideGenerationTimestamp": true,
12
+ "httpUserAgent": "ruby-swagger-#{VERSION}"
5
13
  }
@@ -8,10 +8,12 @@ end
8
8
 
9
9
  $docraptor = DocRaptor::DocApi.new
10
10
 
11
+ output_file = "ruby-async.pdf"
12
+
11
13
  create_response = $docraptor.create_async_doc(
12
14
  test: true,
13
15
  document_content: "<html><body>Hello from Ruby</body></html>",
14
- name: "ruby-async.pdf",
16
+ name: output_file,
15
17
  document_type: "pdf",
16
18
  )
17
19
 
@@ -22,4 +24,11 @@ status_response = nil
22
24
  sleep 1
23
25
  end
24
26
 
25
- $docraptor.get_async_doc(status_response.download_id)
27
+ output_payload = $docraptor.get_async_doc(status_response.download_id)
28
+
29
+ File.write(output_file, output_payload)
30
+ output_type = `file -b #{output_file}`
31
+ File.delete output_file
32
+
33
+ raise "Output was not a PDF" unless output_type.start_with?("PDF")
34
+
@@ -0,0 +1,50 @@
1
+ require "bundler/setup"
2
+ Bundler.require
3
+ require 'open-uri'
4
+
5
+ api_key = File.read("#{__dir__}/../.docraptor_key").strip
6
+ unless api_key
7
+ raise "Please put a valid (paid plan) api key in the .docraptor_key file when testing this feature."
8
+ end
9
+
10
+ DocRaptor.configure do |dr|
11
+ dr.username = api_key
12
+ # dr.debugging = true
13
+ end
14
+
15
+ $docraptor = DocRaptor::DocApi.new
16
+
17
+ output_file = "expire-hosted-ruby-sync.pdf"
18
+
19
+ output_payload = $docraptor.create_hosted_async_doc(
20
+ test: true,
21
+ document_content: "<html><body>Hello from Ruby</body></html>",
22
+ name: output_file,
23
+ document_type: "pdf",
24
+ hosted_expires_at: (Time.now + 86400).strftime('%FT%T%:z'), # 1 day from now
25
+ )
26
+
27
+ status_response = nil
28
+ 30.times do
29
+ status_response = $docraptor.get_async_doc_status(output_payload.status_id)
30
+ break if status_response.status == "completed"
31
+ sleep 1
32
+ end
33
+
34
+ actual_document = open status_response.download_url
35
+ IO.copy_stream(actual_document, output_file)
36
+
37
+ output_type = `file -b #{output_file}`
38
+ File.delete output_file
39
+
40
+ raise "Output was not a PDF" unless output_type.start_with?("PDF")
41
+
42
+ $docraptor.expire(status_response.download_id)
43
+
44
+ begin
45
+ actual_document = open status_response.download_url
46
+ rescue OpenURI::HTTPError => http_error
47
+ exit 0
48
+ end
49
+
50
+ exit 1
@@ -0,0 +1,34 @@
1
+ require "bundler/setup"
2
+ Bundler.require
3
+ require "open-uri"
4
+
5
+ api_key = File.read("#{__dir__}/../.docraptor_key").strip
6
+ unless api_key
7
+ raise "Please put a valid (paid plan) api key in the .docraptor_key file when testing this feature."
8
+ end
9
+
10
+ DocRaptor.configure do |dr|
11
+ dr.username = api_key
12
+ # dr.debugging = true
13
+ end
14
+
15
+ $docraptor = DocRaptor::DocApi.new
16
+
17
+ output_file = "hosted-ruby-sync.pdf"
18
+
19
+ output_payload = $docraptor.create_hosted_async_doc(
20
+ test: true,
21
+ document_content: "<html><body>Hello from Ruby</body></html>",
22
+ name: output_file,
23
+ document_type: "pdf",
24
+ hosted_expires_at: (Time.now + 86400).strftime('%FT%T%:z'), # 1 day from now
25
+ )
26
+
27
+ status_response = nil
28
+ 30.times do
29
+ status_response = $docraptor.get_async_doc_status(output_payload.status_id)
30
+ break if status_response.status == "completed"
31
+ sleep 1
32
+ end
33
+
34
+
@@ -0,0 +1,33 @@
1
+ require "bundler/setup"
2
+ Bundler.require
3
+ require "open-uri"
4
+
5
+ api_key = File.read("#{__dir__}/../.docraptor_key").strip
6
+ unless api_key
7
+ raise "Please put a valid (paid plan) api key in the .docraptor_key file when testing this feature."
8
+ end
9
+
10
+ DocRaptor.configure do |dr|
11
+ dr.username = api_key
12
+ # dr.debugging = true
13
+ end
14
+
15
+ $docraptor = DocRaptor::DocApi.new
16
+
17
+ output_file = "hosted-ruby-sync.pdf"
18
+
19
+ output_payload = $docraptor.create_hosted_doc(
20
+ test: true,
21
+ document_content: "<html><body>Hello from Ruby</body></html>",
22
+ name: output_file,
23
+ document_type: "pdf",
24
+ hosted_expires_at: (Time.now + 86400).strftime('%FT%T%:z'), # 1 day from now
25
+ )
26
+
27
+ actual_document = open output_payload.download_url
28
+ IO.copy_stream(actual_document, output_file)
29
+
30
+ output_type = `file -b #{output_file}`
31
+ File.delete output_file
32
+
33
+ raise "Output was not a PDF" unless output_type.start_with?("PDF")
@@ -8,9 +8,17 @@ end
8
8
 
9
9
  $docraptor = DocRaptor::DocApi.new
10
10
 
11
- $docraptor.create_doc(
11
+ output_file = "ruby-sync.pdf"
12
+
13
+ output_payload = $docraptor.create_doc(
12
14
  test: true,
13
15
  document_content: "<html><body>Hello from Ruby</body></html>",
14
- name: "ruby-sync.pdf",
16
+ name: output_file,
15
17
  document_type: "pdf",
16
18
  )
19
+
20
+ File.write(output_file, output_payload)
21
+ output_type = `file -b #{output_file}`
22
+ File.delete output_file
23
+
24
+ raise "Output was not a PDF" unless output_type.start_with?("PDF")
@@ -8,9 +8,17 @@ end
8
8
 
9
9
  $docraptor = DocRaptor::DocApi.new
10
10
 
11
- $docraptor.create_doc(
11
+ output_file = "ruby-xlsx.xlsx"
12
+
13
+ output_payload = $docraptor.create_doc(
12
14
  test: true,
13
15
  document_content: "<html><body><table><tr><td>Hello from Ruby</td></tr></table></body></html>",
14
- name: "ruby-xlsx.xlsx",
16
+ name: output_file,
15
17
  document_type: "xlsx",
16
18
  )
19
+
20
+ File.write(output_file, output_payload)
21
+ output_type = `file -b #{output_file}`
22
+ File.delete output_file
23
+
24
+ raise "Output was not an XLSX (zip)" unless output_type.start_with?("Zip")
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: docraptor
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
- - Elijah Miller
8
- - Matthew Gordon
9
- autorequire:
7
+ - Expected Behavior
8
+ autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2016-10-18 00:00:00.000000000 Z
11
+ date: 2020-07-31 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: typhoeus
@@ -17,229 +16,231 @@ dependencies:
17
16
  requirements:
18
17
  - - "~>"
19
18
  - !ruby/object:Gem::Version
20
- version: '0.2'
19
+ version: '1.0'
21
20
  - - ">="
22
21
  - !ruby/object:Gem::Version
23
- version: 0.2.1
22
+ version: 1.0.1
24
23
  type: :runtime
25
24
  prerelease: false
26
25
  version_requirements: !ruby/object:Gem::Requirement
27
26
  requirements:
28
27
  - - "~>"
29
28
  - !ruby/object:Gem::Version
30
- version: '0.2'
29
+ version: '1.0'
31
30
  - - ">="
32
31
  - !ruby/object:Gem::Version
33
- version: 0.2.1
32
+ version: 1.0.1
34
33
  - !ruby/object:Gem::Dependency
35
34
  name: json
36
35
  requirement: !ruby/object:Gem::Requirement
37
36
  requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '1.4'
41
37
  - - ">="
42
38
  - !ruby/object:Gem::Version
43
- version: 1.4.6
39
+ version: 2.1.0
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '2.1'
44
43
  type: :runtime
45
44
  prerelease: false
46
45
  version_requirements: !ruby/object:Gem::Requirement
47
46
  requirements:
48
- - - "~>"
49
- - !ruby/object:Gem::Version
50
- version: '1.4'
51
47
  - - ">="
52
48
  - !ruby/object:Gem::Version
53
- version: 1.4.6
49
+ version: 2.1.0
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '2.1'
54
53
  - !ruby/object:Gem::Dependency
55
- name: pry
54
+ name: rspec
56
55
  requirement: !ruby/object:Gem::Requirement
57
56
  requirements:
58
- - - "~>"
59
- - !ruby/object:Gem::Version
60
- version: '0.10'
61
57
  - - ">="
62
58
  - !ruby/object:Gem::Version
63
- version: 0.10.3
59
+ version: 3.6.0
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '3.6'
64
63
  type: :development
65
64
  prerelease: false
66
65
  version_requirements: !ruby/object:Gem::Requirement
67
66
  requirements:
68
- - - "~>"
69
- - !ruby/object:Gem::Version
70
- version: '0.10'
71
67
  - - ">="
72
68
  - !ruby/object:Gem::Version
73
- version: 0.10.3
69
+ version: 3.6.0
70
+ - - "~>"
71
+ - !ruby/object:Gem::Version
72
+ version: '3.6'
74
73
  - !ruby/object:Gem::Dependency
75
- name: rake
74
+ name: vcr
76
75
  requirement: !ruby/object:Gem::Requirement
77
76
  requirements:
78
77
  - - "~>"
79
78
  - !ruby/object:Gem::Version
80
- version: '10.4'
79
+ version: '3.0'
81
80
  - - ">="
82
81
  - !ruby/object:Gem::Version
83
- version: 10.4.2
82
+ version: 3.0.1
84
83
  type: :development
85
84
  prerelease: false
86
85
  version_requirements: !ruby/object:Gem::Requirement
87
86
  requirements:
88
87
  - - "~>"
89
88
  - !ruby/object:Gem::Version
90
- version: '10.4'
89
+ version: '3.0'
91
90
  - - ">="
92
91
  - !ruby/object:Gem::Version
93
- version: 10.4.2
92
+ version: 3.0.1
94
93
  - !ruby/object:Gem::Dependency
95
- name: rspec
94
+ name: webmock
96
95
  requirement: !ruby/object:Gem::Requirement
97
96
  requirements:
98
97
  - - "~>"
99
98
  - !ruby/object:Gem::Version
100
- version: '3.2'
99
+ version: '1.24'
101
100
  - - ">="
102
101
  - !ruby/object:Gem::Version
103
- version: 3.2.0
102
+ version: 1.24.3
104
103
  type: :development
105
104
  prerelease: false
106
105
  version_requirements: !ruby/object:Gem::Requirement
107
106
  requirements:
108
107
  - - "~>"
109
108
  - !ruby/object:Gem::Version
110
- version: '3.2'
109
+ version: '1.24'
111
110
  - - ">="
112
111
  - !ruby/object:Gem::Version
113
- version: 3.2.0
112
+ version: 1.24.3
114
113
  - !ruby/object:Gem::Dependency
115
- name: vcr
114
+ name: autotest
116
115
  requirement: !ruby/object:Gem::Requirement
117
116
  requirements:
118
117
  - - "~>"
119
118
  - !ruby/object:Gem::Version
120
- version: '2.9'
119
+ version: '4.4'
121
120
  - - ">="
122
121
  - !ruby/object:Gem::Version
123
- version: 2.9.3
122
+ version: 4.4.6
124
123
  type: :development
125
124
  prerelease: false
126
125
  version_requirements: !ruby/object:Gem::Requirement
127
126
  requirements:
128
127
  - - "~>"
129
128
  - !ruby/object:Gem::Version
130
- version: '2.9'
129
+ version: '4.4'
131
130
  - - ">="
132
131
  - !ruby/object:Gem::Version
133
- version: 2.9.3
132
+ version: 4.4.6
134
133
  - !ruby/object:Gem::Dependency
135
- name: webmock
134
+ name: autotest-rails-pure
136
135
  requirement: !ruby/object:Gem::Requirement
137
136
  requirements:
138
137
  - - "~>"
139
138
  - !ruby/object:Gem::Version
140
- version: '1.6'
139
+ version: '4.1'
141
140
  - - ">="
142
141
  - !ruby/object:Gem::Version
143
- version: 1.6.2
142
+ version: 4.1.2
144
143
  type: :development
145
144
  prerelease: false
146
145
  version_requirements: !ruby/object:Gem::Requirement
147
146
  requirements:
148
147
  - - "~>"
149
148
  - !ruby/object:Gem::Version
150
- version: '1.6'
149
+ version: '4.1'
151
150
  - - ">="
152
151
  - !ruby/object:Gem::Version
153
- version: 1.6.2
152
+ version: 4.1.2
154
153
  - !ruby/object:Gem::Dependency
155
- name: autotest
154
+ name: autotest-growl
156
155
  requirement: !ruby/object:Gem::Requirement
157
156
  requirements:
158
157
  - - "~>"
159
158
  - !ruby/object:Gem::Version
160
- version: '4.4'
159
+ version: '0.2'
161
160
  - - ">="
162
161
  - !ruby/object:Gem::Version
163
- version: 4.4.6
162
+ version: 0.2.16
164
163
  type: :development
165
164
  prerelease: false
166
165
  version_requirements: !ruby/object:Gem::Requirement
167
166
  requirements:
168
167
  - - "~>"
169
168
  - !ruby/object:Gem::Version
170
- version: '4.4'
169
+ version: '0.2'
171
170
  - - ">="
172
171
  - !ruby/object:Gem::Version
173
- version: 4.4.6
172
+ version: 0.2.16
174
173
  - !ruby/object:Gem::Dependency
175
- name: autotest-rails-pure
174
+ name: autotest-fsevent
176
175
  requirement: !ruby/object:Gem::Requirement
177
176
  requirements:
178
177
  - - "~>"
179
178
  - !ruby/object:Gem::Version
180
- version: '4.1'
179
+ version: '0.2'
181
180
  - - ">="
182
181
  - !ruby/object:Gem::Version
183
- version: 4.1.2
182
+ version: 0.2.12
184
183
  type: :development
185
184
  prerelease: false
186
185
  version_requirements: !ruby/object:Gem::Requirement
187
186
  requirements:
188
187
  - - "~>"
189
188
  - !ruby/object:Gem::Version
190
- version: '4.1'
189
+ version: '0.2'
191
190
  - - ">="
192
191
  - !ruby/object:Gem::Version
193
- version: 4.1.2
192
+ version: 0.2.12
194
193
  - !ruby/object:Gem::Dependency
195
- name: autotest-growl
194
+ name: rake
196
195
  requirement: !ruby/object:Gem::Requirement
197
196
  requirements:
198
197
  - - "~>"
199
198
  - !ruby/object:Gem::Version
200
- version: '0.2'
199
+ version: '11.2'
201
200
  - - ">="
202
201
  - !ruby/object:Gem::Version
203
- version: 0.2.16
202
+ version: 11.2.2
204
203
  type: :development
205
204
  prerelease: false
206
205
  version_requirements: !ruby/object:Gem::Requirement
207
206
  requirements:
208
207
  - - "~>"
209
208
  - !ruby/object:Gem::Version
210
- version: '0.2'
209
+ version: '11.2'
211
210
  - - ">="
212
211
  - !ruby/object:Gem::Version
213
- version: 0.2.16
212
+ version: 11.2.2
214
213
  - !ruby/object:Gem::Dependency
215
- name: autotest-fsevent
214
+ name: pry
216
215
  requirement: !ruby/object:Gem::Requirement
217
216
  requirements:
218
217
  - - "~>"
219
218
  - !ruby/object:Gem::Version
220
- version: '0.2'
219
+ version: '0.10'
221
220
  - - ">="
222
221
  - !ruby/object:Gem::Version
223
- version: 0.2.11
222
+ version: 0.10.4
224
223
  type: :development
225
224
  prerelease: false
226
225
  version_requirements: !ruby/object:Gem::Requirement
227
226
  requirements:
228
227
  - - "~>"
229
228
  - !ruby/object:Gem::Version
230
- version: '0.2'
229
+ version: '0.10'
231
230
  - - ">="
232
231
  - !ruby/object:Gem::Version
233
- version: 0.2.11
232
+ version: 0.10.4
234
233
  description: A native client library for the DocRaptor HTML to PDF/XLS service.
235
234
  email:
236
- - elijah@expectedbehavior.com
237
- - matt@expectedbehavior.com
235
+ - support@docraptor.com
238
236
  executables: []
239
237
  extensions: []
240
238
  extra_rdoc_files: []
241
239
  files:
242
240
  - ".gitignore"
241
+ - ".rspec"
242
+ - ".swagger-codegen-ignore"
243
+ - ".swagger-codegen/VERSION"
243
244
  - ".swagger-revision"
244
245
  - CHANGELOG.md
245
246
  - Gemfile
@@ -249,6 +250,8 @@ files:
249
250
  - docraptor.gemspec
250
251
  - docraptor.yaml
251
252
  - examples/async.rb
253
+ - examples/hosted_async.rb
254
+ - examples/hosted_sync.rb
252
255
  - examples/sync.rb
253
256
  - lib/docraptor.rb
254
257
  - lib/docraptor/api/doc_api.rb
@@ -256,27 +259,34 @@ files:
256
259
  - lib/docraptor/api_error.rb
257
260
  - lib/docraptor/configuration.rb
258
261
  - lib/docraptor/models/async_doc.rb
259
- - lib/docraptor/models/async_doc_status.rb
260
262
  - lib/docraptor/models/doc.rb
263
+ - lib/docraptor/models/doc_status.rb
261
264
  - lib/docraptor/models/prince_options.rb
262
265
  - lib/docraptor/version.rb
263
266
  - script/clean
267
+ - script/fix_gemspec.rb
264
268
  - script/generate_language
265
269
  - script/post_generate_language
266
270
  - script/swagger
267
271
  - script/test
268
272
  - script/update_from_upstream
273
+ - spec/api_client_spec.rb
274
+ - spec/configuration_spec.rb
275
+ - spec/spec_helper.rb
269
276
  - swagger-config.json
270
277
  - test/async.rb
278
+ - test/expire_hosted.rb
279
+ - test/hosted_async.rb
280
+ - test/hosted_sync.rb
271
281
  - test/invalid_async.rb
272
282
  - test/invalid_sync.rb
273
283
  - test/sync.rb
274
284
  - test/xlsx.rb
275
285
  homepage: https://github.com/docraptor/docraptor-ruby
276
286
  licenses:
277
- - Apache-2.0
287
+ - MIT
278
288
  metadata: {}
279
- post_install_message:
289
+ post_install_message:
280
290
  rdoc_options: []
281
291
  require_paths:
282
292
  - lib
@@ -284,16 +294,26 @@ required_ruby_version: !ruby/object:Gem::Requirement
284
294
  requirements:
285
295
  - - ">="
286
296
  - !ruby/object:Gem::Version
287
- version: '0'
297
+ version: '1.9'
288
298
  required_rubygems_version: !ruby/object:Gem::Requirement
289
299
  requirements:
290
300
  - - ">="
291
301
  - !ruby/object:Gem::Version
292
302
  version: '0'
293
303
  requirements: []
294
- rubyforge_project:
295
- rubygems_version: 2.5.1
296
- signing_key:
304
+ rubygems_version: 3.0.3
305
+ signing_key:
297
306
  specification_version: 4
298
307
  summary: A wrapper for the DocRaptor HTML to PDF/XLS service.
299
- test_files: []
308
+ test_files:
309
+ - spec/api_client_spec.rb
310
+ - spec/configuration_spec.rb
311
+ - spec/spec_helper.rb
312
+ - test/async.rb
313
+ - test/expire_hosted.rb
314
+ - test/hosted_async.rb
315
+ - test/hosted_sync.rb
316
+ - test/invalid_async.rb
317
+ - test/invalid_sync.rb
318
+ - test/sync.rb
319
+ - test/xlsx.rb