embulk-input-zendesk 0.1.8 → 0.1.9

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: eaddbf9ca58a72b5bb9e00497f7eef3c3303e171
4
- data.tar.gz: 4a13d21ceff5b8d019f43d9c98ea4f0dac59840c
3
+ metadata.gz: f81eb6b1d20e4c6fda87abed25edfb355d980278
4
+ data.tar.gz: 77f7e79b4b7ac4c962874854863fc7a2ee857abf
5
5
  SHA512:
6
- metadata.gz: fe9134f35bc6d9d0a303f103c7d85ac017eb43a2c2db662c8ae7d18bac85afaed44572cefa6c6fab21ac1c5f6a35861ee61088edcac72421b2fb018844bf3e96
7
- data.tar.gz: 3933f732fd8f073fc52f9ce44962a7e9b8ce6ba248e77d9c45cf1468093ded9f21a0092cb29e7c9b7b779bf820211388f9c0365412e10f52768cfc19dc341a7e
6
+ metadata.gz: 6bfd6c462ad3b628a923025c8f6d406b0a009990ecc8fba791703be61579d6b079b969858f050eb60ead3912fc9405d3a19b86e0fca302217b95fa58dfeebed0
7
+ data.tar.gz: bc93fc9b9340bc5555668e083e9516aee5738b23f4ab65e94d3e1eb6fc6f047d571d8916ed65b3dc5ed18b64c5decb839dcd5004c6eee827d496b4c6a982e3bd
@@ -1,3 +1,6 @@
1
+ ## 0.1.9 - 2016-08-26
2
+ * [fixed] Ignore '422: Too recent start_time' [#14](https://github.com/treasure-data/embulk-input-zendesk/pull/14)
3
+
1
4
  ## 0.1.8 - 2016-07-11
2
5
 
3
6
  * [enhancement] For huge data [#13](https://github.com/treasure-data/embulk-input-zendesk/pull/13)
@@ -1,7 +1,7 @@
1
1
 
2
2
  Gem::Specification.new do |spec|
3
3
  spec.name = "embulk-input-zendesk"
4
- spec.version = "0.1.8"
4
+ spec.version = "0.1.9"
5
5
  spec.authors = ["uu59", "muga", "sakama"]
6
6
  spec.summary = "Zendesk input plugin for Embulk"
7
7
  spec.description = "Loads records from Zendesk."
@@ -319,6 +319,20 @@ module Embulk
319
319
  # 404 would be returned e.g. ticket comments are empty (on fetch_subresource method)
320
320
  when 409
321
321
  raise "[#{status_code}] temporally failure."
322
+ when 422
323
+ begin
324
+ payload = JSON.parse(body)
325
+ if payload["description"].start_with?("Too recent start_time.")
326
+ # That means "No records from start_time". We can recognize it same as 200.
327
+ return
328
+ end
329
+ rescue
330
+ # Failed to parse response.body as JSON
331
+ raise Embulk::ConfigError.new("[#{status_code}] #{body}")
332
+ end
333
+
334
+ # 422 and it isn't "Too recent start_time"
335
+ raise Embulk::ConfigError.new("[#{status_code}] #{body}")
322
336
  when 429
323
337
  # rate limit
324
338
  retry_after = headers["Retry-After"]
@@ -418,6 +418,20 @@ module Embulk
418
418
  end
419
419
  end
420
420
 
421
+ test "422 with Too recent start_time" do
422
+ stub_response(422, [], '{"error":"InvalidValue","description":"Too recent start_time. Use a start_time older than 5 minutes"}')
423
+ assert_nothing_raised do
424
+ client.tickets(&proc{})
425
+ end
426
+ end
427
+
428
+ test "422" do
429
+ stub_response(422)
430
+ assert_raise(ConfigError) do
431
+ client.tickets(&proc{})
432
+ end
433
+ end
434
+
421
435
  test "429" do
422
436
  after = "123"
423
437
  stub_response(429, ["Retry-After: #{after}"])
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: embulk-input-zendesk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - uu59
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-07-11 00:00:00.000000000 Z
13
+ date: 2016-08-26 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  requirement: !ruby/object:Gem::Requirement