vault-invoice-builder-client 0.0.4 → 0.0.6

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: cdc953dca936903cd97a70e19e39b37295669396
4
- data.tar.gz: c46fdd71c8796b65bd4165618e1c63b1a11e3151
3
+ metadata.gz: d133898637556b60b1b42dfd36ec3c9ec334c229
4
+ data.tar.gz: 745b364b00e69abd3bbb3c0ac2ce590084193023
5
5
  SHA512:
6
- metadata.gz: e58fffef5321a53d2c9de756e7e57986cda93a642ed449d5ae3f17862b673c9b19f0d3b89d3aa9ff956340bff9687b868833394c44f3721d19c3a5dcfd83d169
7
- data.tar.gz: ed6d07c397a411e1dbffd6ac30867ddf441d6c37fd6d7e9c975a8954b270d6675983ed3abfd3de3182d2fb02d695125def7e23ba686b99862580703df0c31cce
6
+ metadata.gz: a91fe5e9f61ad580e9f6a49bdc715919ced237fd54ea3c5626728c14de081401249c40b351a35da87cec476da5bfbcb85107fbc2f089b4c3cc51a1b7b5f8388a
7
+ data.tar.gz: 091b769faab4fbd7cede084bf253e8bd65066bb6974e2c0a6f95ee842c03dfc056659219c1938cd1c178c3db2bd9be7646db15fba407ff85f7549725153953fb
data/.gitignore CHANGED
@@ -5,3 +5,4 @@ doc/
5
5
  vendor/
6
6
  test/.test*
7
7
  pkg/
8
+ *.swp
data/Gemfile CHANGED
@@ -12,4 +12,5 @@ end
12
12
  group :test do
13
13
  gem 'rr'
14
14
  gem 'vault-test-tools'
15
+ gem 'pry'
15
16
  end
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- vault-invoice-builder-client (0.0.4)
4
+ vault-invoice-builder-client (0.0.5)
5
5
  excon
6
6
  multi_json
7
7
  yajl-ruby
@@ -12,24 +12,31 @@ GEM
12
12
  ansi (1.5.0)
13
13
  byebug (5.0.0)
14
14
  columnize (= 0.9.0)
15
+ coderay (1.1.1)
15
16
  columnize (0.9.0)
16
- excon (0.45.3)
17
+ excon (0.56.0)
17
18
  guard-compat (1.2.1)
18
19
  guard-minitest (2.4.4)
19
20
  guard-compat (~> 1.2)
20
21
  minitest (>= 3.0)
21
22
  logfmt (0.0.7)
23
+ method_source (0.8.2)
22
24
  mini_portile (0.6.2)
23
25
  minitest (4.7.5)
24
26
  multi_json (1.11.1)
25
27
  nokogiri (1.6.6.2)
26
28
  mini_portile (~> 0.6.0)
29
+ pry (0.10.4)
30
+ coderay (~> 1.1.0)
31
+ method_source (~> 0.8.1)
32
+ slop (~> 3.4)
27
33
  rack (1.6.4)
28
34
  rack-test (0.6.3)
29
35
  rack (>= 1.0)
30
36
  rake (10.4.2)
31
37
  rr (1.1.2)
32
38
  scrolls (0.3.8)
39
+ slop (3.6.0)
33
40
  turn (0.9.7)
34
41
  ansi
35
42
  minitest (~> 4)
@@ -51,6 +58,7 @@ PLATFORMS
51
58
  DEPENDENCIES
52
59
  byebug
53
60
  multi_json
61
+ pry
54
62
  rake
55
63
  rr
56
64
  vault-invoice-builder-client!
@@ -58,4 +66,4 @@ DEPENDENCIES
58
66
  yard
59
67
 
60
68
  BUNDLED WITH
61
- 1.10.2
69
+ 1.15.4
@@ -36,15 +36,16 @@ module Vault::InvoiceBuilder
36
36
  #
37
37
  # @param statement_url [String] An encrypted URL to an object matching the
38
38
  # statement format described in the `Vault::InvoiceBuilder` README.
39
+ # @param json_size [Integer] The size of the json statement in bytes
39
40
  # @raise [Excon::Errors::HTTPStatusError] Raised if the server returns an
40
41
  # unsuccessful HTTP status code.
41
42
  # @return [Excon::Response] The response object.
42
- def post_url(statement_url)
43
+ def post_url(statement_url, json_size=nil)
43
44
  connection = Excon.new(@url)
44
45
  response = connection.post(
45
46
  path: "/statements",
46
47
  headers: {'Content-Type' => 'application/json'},
47
- body: JSON.generate(url: statement_url),
48
+ body: JSON.generate(url: statement_url, json_size: json_size),
48
49
  expects: [202])
49
50
  end
50
51
 
@@ -2,7 +2,7 @@ module Vault
2
2
  module InvoiceBuilder
3
3
  class Client
4
4
  # The `Vault::InvoiceBuilder::Client` gem version.
5
- VERSION = '0.0.4'
5
+ VERSION = '0.0.6'
6
6
  end
7
7
  end
8
8
  end
@@ -1,5 +1,6 @@
1
1
  require 'helper'
2
2
  require 'multi_json'
3
+ require 'pry'
3
4
 
4
5
  class ClientTest < Vault::TestCase
5
6
  include Vault::Test::EnvironmentHelpers
@@ -133,7 +134,7 @@ class ClientTest < Vault::TestCase
133
134
 
134
135
  # Client.post_url makes a POST request to the canonical statement drain API
135
136
  def test_post_url_with_url
136
- json = { url: 'http://encrypted.url.example' }
137
+ json = { url: 'http://encrypted.url.example', json_size: 100 }
137
138
  Excon.stub(method: :post) do |request|
138
139
  assert_equal('vault-invoice-builder.herokuapp.com', request[:host])
139
140
  assert_equal(443, request[:port])
@@ -141,10 +142,13 @@ class ClientTest < Vault::TestCase
141
142
  assert_equal('application/json', request[:headers]['Content-Type'])
142
143
  assert_equal(json, MultiJson.load(request[:body], {symbolize_keys: true}))
143
144
  Excon.stubs.pop
144
- {status: 202}
145
+ {status: 202, body: JSON.generate(url: 'http://encrypted.url.example', json_size: 100)}
145
146
  end
146
- response = @client.post_url('http://encrypted.url.example')
147
+ response = @client.post_url('http://encrypted.url.example', 100)
148
+ doc = MultiJson.load(response.body, symbolize_keys: true)
147
149
  assert_equal(202, response.status)
150
+ assert_equal('http://encrypted.url.example', doc[:url])
151
+ assert_equal(100, doc[:json_size])
148
152
  end
149
153
 
150
154
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vault-invoice-builder-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Continanza
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-06-25 00:00:00.000000000 Z
13
+ date: 2017-08-30 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: excon
@@ -96,7 +96,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
96
96
  version: '0'
97
97
  requirements: []
98
98
  rubyforge_project:
99
- rubygems_version: 2.4.6
99
+ rubygems_version: 2.5.1
100
100
  signing_key:
101
101
  specification_version: 4
102
102
  summary: A simple wrapper for the Vault::InvoiceBuilder HTTP API