apruve 1.1.3 → 1.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1f77ae16802dececd30e06bdbbd304c22bc9ff54
4
- data.tar.gz: d85fef623412045ca74e915fea7ed579976e9f01
3
+ metadata.gz: 24401a925e3305111fbbe854bba852da2abb854f
4
+ data.tar.gz: bfed11774b2cec8edf220cc1cdb4f29eb8993a5e
5
5
  SHA512:
6
- metadata.gz: 678517ef6ac88dc6c7baab6a2d1db526bac09f0a2b8e57179b17230bee7f99684bf56bd4f9b99523ec8c735cb4d8f6e52996d717b2f900cbb16ac2f962436885
7
- data.tar.gz: 220c84012bb49de0d07853d3a4ba704530a61421da39e79d8806d7a10c74ad6dfe0ebf550b231c999507a09de0032f8bf130237bdbde65cf7741233a280d904a
6
+ metadata.gz: c15cbe632feebad3ee53777e79e646b5c5b4bba422a0afbfa912b54fbd1e50e360261060200d33ea01a2593e30ad5f9a6d48da6a46c0deef5808ba2d3117cd09
7
+ data.tar.gz: 4277d7145125765dfb4a9d5d4b02860bd65d1b51ac3ed3ea2210c951d29542bdc8d583a83a5f3a55b4fe0240f27a05c13336e39a1b4dc50e864836828c1a2915
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- apruve (1.1.2)
4
+ apruve (1.1.3)
5
5
  addressable (~> 2.3)
6
6
  faraday (>= 0.8.6, <= 0.9.0)
7
7
  faraday_middleware (~> 0.9)
@@ -123,4 +123,4 @@ DEPENDENCIES
123
123
  yard
124
124
 
125
125
  BUNDLED WITH
126
- 1.12.5
126
+ 1.13.7
@@ -6,9 +6,11 @@ require_relative 'resources/order'
6
6
  require_relative 'resources/order_item'
7
7
  require_relative 'resources/invoice'
8
8
  require_relative 'resources/invoice_item'
9
+ require_relative 'resources/invoice_return'
9
10
  require_relative 'resources/shipment'
10
11
  require_relative 'resources/shipment_item'
11
12
  require_relative 'resources/merchant'
12
13
  require_relative 'resources/subscription'
13
14
  require_relative 'resources/subscription_adjustment'
14
- require_relative 'resources/webhook_endpoint'
15
+ require_relative 'resources/webhook_endpoint'
16
+ require_relative 'resources/corporate_account'
@@ -0,0 +1,11 @@
1
+ module Apruve
2
+ class CorporateAccount < Apruve::ApruveObject
3
+ attr_accessor :id, :merchant_uuid, :customer_uuid, :type, :created_at, :updated_at, :payment_term_strategy_name,
4
+ :disabled_at, :name, :creditor_term_id, :payment_method_id, :status, :trusted_merchant
5
+
6
+ def self.find(merchant_id, email)
7
+ response = Apruve.get("merchants/#{merchant_id}/corporate_accounts?email=#{email}")
8
+ return CorporateAccount.new(response.body.empty? ? {} : response.body[0])
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,37 @@
1
+ module Apruve
2
+ class InvoiceReturn < Apruve::ApruveObject
3
+ attr_accessor :id, :invoice_id, :amount_cents, :currency, :uuid, :reason, :merchant_notes, :created_by_id,
4
+ :created_at, :updated_at
5
+
6
+ def self.find(invoice_id, id)
7
+ response = Apruve.get("invoices/#{invoice_id}/invoice_returns/#{id}")
8
+ logger.debug response.body
9
+ InvoiceReturn.new(response.body)
10
+ end
11
+
12
+ def validate
13
+ errors = []
14
+ errors << 'amount_cents must be set' if amount_cents.nil?
15
+ errors << 'reason must be set' if reason.nil?
16
+ raise Apruve::ValidationError.new(errors) if errors.length > 0
17
+ end
18
+
19
+ def self.find_all(invoice_id)
20
+ response = Apruve.get("invoices/#{invoice_id}/invoice_returns")
21
+ response.body.map { |invoice_return| InvoiceReturn.new(invoice_return) }
22
+ end
23
+
24
+ def update!
25
+ validate
26
+ response = Apruve.put("invoices/#{self.invoice_id}/invoice_returns/#{self.id}", self.to_json)
27
+ logger.debug response.body
28
+ end
29
+
30
+ def save!
31
+ validate
32
+ response = Apruve.post("invoices/#{self.invoice_id}/invoice_returns", self.to_json)
33
+ logger.debug response.body
34
+ self.id = response.body['id']
35
+ end
36
+ end
37
+ end
@@ -1,7 +1,7 @@
1
1
  module Apruve
2
2
  class Order < Apruve::ApruveObject
3
- attr_accessor :id, :merchant_id, :customer_id, :merchant_order_id, :status, :amount_cents, :currency, :tax_cents,
4
- :shipping_cents, :expire_at, :order_items, :accepts_payments_via, :accepts_payment_terms, :payment_terms,
3
+ attr_accessor :id, :merchant_id, :shopper_id, :merchant_order_id, :status, :amount_cents, :currency, :tax_cents,
4
+ :shipping_cents, :expire_at, :order_items, :accepts_payments_via, :accepts_payment_terms, :payment_term,
5
5
  :created_at, :updated_at, :final_state_at, :default_payment_method, :links, :finalize_on_create, :invoice_on_create
6
6
 
7
7
  def self.find(id)
@@ -54,9 +54,18 @@ module Apruve
54
54
  def validate
55
55
  errors = []
56
56
  errors << 'merchant_id must be set' if merchant_id.nil?
57
+ errors << 'payment_term must be supplied' if payment_term.nil?
57
58
  raise Apruve::ValidationError.new(errors) if errors.length > 0
58
59
  end
59
60
 
61
+ def save!
62
+ validate
63
+ response = Apruve.post('orders', self.to_json)
64
+ self.id = response.body['id']
65
+ self.status = response.body['status']
66
+ self.created_at = response.body['created_at']
67
+ end
68
+
60
69
  def value_string
61
70
  # add each field in the PR
62
71
  str = "#{merchant_id}#{merchant_order_id}#{amount_cents}#{currency}#{tax_cents}#{shipping_cents}#{expire_at}#{accepts_payment_terms}#{finalize_on_create}#{invoice_on_create}"
@@ -1,3 +1,3 @@
1
1
  module Apruve
2
- VERSION = '1.1.3'
2
+ VERSION = '1.1.4'
3
3
  end
@@ -0,0 +1,68 @@
1
+ require 'spec_helper'
2
+
3
+ describe Apruve::CorporateAccount do
4
+ before :each do
5
+ Apruve.configure('7ec4e1ae7c96fceba0d599da541912b7', 'local')
6
+ end
7
+
8
+ let (:id) { '89ea2488fe0a5c7bb38aa7f9b088874a' }
9
+ let (:merchant_uuid) { '89ea2488fe0a5c7bb38aa7f9b088874b' }
10
+ let (:customer_uuid) { '89ea2488fe0a5c7bb38aa7f9b088874c' }
11
+ let (:type) { 'CorporateAccount' }
12
+ let (:payment_term_strategy_name) { 'EOMNet15' }
13
+ let (:name) { 'A name' }
14
+ let (:email) { Faker::Internet.email }
15
+
16
+ let (:corporate_account) do
17
+ Apruve::CorporateAccount.new(
18
+ id: id,
19
+ merchant_uuid: merchant_uuid,
20
+ customer_uuid: customer_uuid,
21
+ type: type,
22
+ payment_term_strategy_name: payment_term_strategy_name,
23
+ name: name,
24
+ )
25
+ end
26
+ subject { corporate_account }
27
+
28
+ it { should respond_to(:id) }
29
+ it { should respond_to(:merchant_uuid) }
30
+ it { should respond_to(:customer_uuid) }
31
+ it { should respond_to(:type) }
32
+ it { should respond_to(:created_at) }
33
+ it { should respond_to(:updated_at) }
34
+ it { should respond_to(:payment_term_strategy_name) }
35
+ it { should respond_to(:disabled_at) }
36
+ it { should respond_to(:name) }
37
+ it { should respond_to(:creditor_term_id) }
38
+ it { should respond_to(:payment_method_id) }
39
+ it { should respond_to(:status) }
40
+ it { should respond_to(:trusted_merchant) }
41
+
42
+
43
+ describe '#find' do
44
+ describe 'success' do
45
+ let! (:stubs) do
46
+ faraday_stubs do |stub|
47
+ stub.get("/api/v4/merchants/#{merchant_uuid}/corporate_accounts?email=#{email}") { [200, {}, '{}'] }
48
+ end
49
+ end
50
+ it 'should do a get' do
51
+ Apruve::CorporateAccount.find(merchant_uuid, email)
52
+ stubs.verify_stubbed_calls
53
+ end
54
+ end
55
+
56
+ describe 'not found' do
57
+ let! (:stubs) do
58
+ faraday_stubs do |stub|
59
+ stub.get("/api/v4/merchants/#{merchant_uuid}/corporate_accounts?email=#{email}") { [404, {}, 'Not Found'] }
60
+ end
61
+ end
62
+ it 'should raise' do
63
+ expect { Apruve::CorporateAccount.find(merchant_uuid, email) }.to raise_error(Apruve::NotFound)
64
+ stubs.verify_stubbed_calls
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,165 @@
1
+ require 'spec_helper'
2
+
3
+ describe Apruve::InvoiceReturn do
4
+ before :each do
5
+ Apruve.configure('f5fbe71d68772d1f562ed6f598b995b3', 'local')
6
+ end
7
+
8
+ let (:id) { '89ea2488fe0a5c7bb38aa7f9b088874a' }
9
+ let (:invoice_id) { '89ea2488fe0a5c7bb38aa7f9b088874b' }
10
+ let (:amount_cents) { 12345 }
11
+ let (:currency) { 'USD' }
12
+ let (:reason) { 'DAMAGED' }
13
+
14
+ let (:invoice_return) do
15
+ Apruve::InvoiceReturn.new(
16
+ id: id,
17
+ invoice_id: invoice_id,
18
+ amount_cents: amount_cents,
19
+ currency: currency,
20
+ reason: reason
21
+ )
22
+ end
23
+ subject { invoice_return }
24
+
25
+ it { should respond_to(:id) }
26
+ it { should respond_to(:invoice_id) }
27
+ it { should respond_to(:amount_cents) }
28
+ it { should respond_to(:currency) }
29
+ it { should respond_to(:uuid) }
30
+ it { should respond_to(:reason) }
31
+ it { should respond_to(:merchant_notes) }
32
+ it { should respond_to(:created_by_id) }
33
+ it { should respond_to(:created_at) }
34
+ it { should respond_to(:updated_at) }
35
+
36
+ describe '#find' do
37
+ context 'successful response' do
38
+ let! (:stubs) do
39
+ faraday_stubs do |stub|
40
+ stub.get("api/v4/invoices/#{invoice_id}/invoice_returns/#{id}") { [200, {} , '{}'] }
41
+ end
42
+ end
43
+ it 'should get an invoice return' do
44
+ Apruve::InvoiceReturn.find(invoice_id, id)
45
+ stubs.verify_stubbed_calls
46
+ end
47
+ end
48
+
49
+ context 'when not found' do
50
+ let! (:stubs) do
51
+ faraday_stubs do |stub|
52
+ stub.get("api/v4/invoices/#{invoice_id}/invoice_returns/#{id}") { [404, {} , 'Not Found'] }
53
+ end
54
+ end
55
+ it 'should raise not found' do
56
+ expect { Apruve::InvoiceReturn.find(invoice_id, id) }.to raise_error(Apruve::NotFound)
57
+ stubs.verify_stubbed_calls
58
+ end
59
+ end
60
+ end
61
+
62
+ describe '#find_all' do
63
+ context 'successful response' do
64
+ let! (:stubs) do
65
+ faraday_stubs do |stub|
66
+ stub.get("api/v4/invoices/#{invoice_id}/invoice_returns") { [200, {} , '{}'] }
67
+ end
68
+ end
69
+ it 'should get all returns for an invoice' do
70
+ Apruve::InvoiceReturn.find_all(invoice_id)
71
+ stubs.verify_stubbed_calls
72
+ end
73
+ end
74
+
75
+ context 'when invoice not found' do
76
+ let! (:stubs) do
77
+ faraday_stubs do |stub|
78
+ stub.get("api/v4/invoices/#{invoice_id}/invoice_returns") { [404, {} , 'Not Found'] }
79
+ end
80
+ end
81
+ it 'should raise not found' do
82
+ expect { Apruve::InvoiceReturn.find_all(invoice_id) }.to raise_error(Apruve::NotFound)
83
+ stubs.verify_stubbed_calls
84
+ end
85
+ end
86
+ end
87
+
88
+ describe '#save' do
89
+ let (:response) do
90
+ {
91
+ id: id,
92
+ invoice_id: invoice_id,
93
+ amount_cents: amount_cents,
94
+ currency: currency,
95
+ reason: reason
96
+ }
97
+ end
98
+ context 'successful response' do
99
+ let! (:stubs) do
100
+ faraday_stubs do |stub|
101
+ stub.post(
102
+ "/api/v4/invoices/#{invoice_id}/invoice_returns",
103
+ invoice_return.to_json,
104
+ ) { [200, {}, response.to_json] }
105
+ end
106
+ end
107
+ it 'should post new invoice return' do
108
+ invoice_return.save!
109
+ expect(invoice_return.id).to eq id
110
+ stubs.verify_stubbed_calls
111
+ end
112
+ end
113
+
114
+ context 'when invoice not found' do
115
+ let! (:stubs) do
116
+ faraday_stubs do |stub|
117
+ stub.post(
118
+ "/api/v4/invoices/#{invoice_id}/invoice_returns",
119
+ invoice_return.to_json,
120
+ ) { [404, {}, 'Not Found'] }
121
+ end
122
+ end
123
+ it 'should raise not found' do
124
+ expect { invoice_return.save! }.to raise_error(Apruve::NotFound)
125
+ stubs.verify_stubbed_calls
126
+ end
127
+ end
128
+ end
129
+
130
+ describe '#update' do
131
+ let (:response) do
132
+ {
133
+ id: id,
134
+ invoice_id: invoice_id,
135
+ amount_cents: amount_cents,
136
+ currency: currency,
137
+ reason: reason
138
+ }
139
+ end
140
+
141
+ context 'successful response' do
142
+ let! (:stubs) do
143
+ faraday_stubs do |stub|
144
+ stub.put("/api/v4/invoices/#{invoice_id}/invoice_returns/#{id}", invoice_return.to_json) { [200, {}, response.to_json] }
145
+ end
146
+ end
147
+ it 'should put updated invoice return' do
148
+ invoice_return.update!
149
+ stubs.verify_stubbed_calls
150
+ end
151
+ end
152
+
153
+ context 'when invoice return not found' do
154
+ let! (:stubs) do
155
+ faraday_stubs do |stub|
156
+ stub.put("/api/v4/invoices/#{invoice_id}/invoice_returns/#{id}", invoice_return.to_json) { [404, {}, 'Not Found'] }
157
+ end
158
+ end
159
+ it 'should raise not found' do
160
+ expect { invoice_return.update! }.to raise_error(Apruve::NotFound)
161
+ stubs.verify_stubbed_calls
162
+ end
163
+ end
164
+ end
165
+ end
@@ -2,14 +2,13 @@ require 'spec_helper'
2
2
 
3
3
  describe Apruve::Order do
4
4
  before :each do
5
- Apruve.configure('f5fbe71d68772d1f562ed6f598b995b3', 'local')
5
+ Apruve.configure('7ec4e1ae7c96fceba0d599da541912b7', 'local')
6
6
  end
7
7
 
8
8
  let (:order_items) do
9
9
  [
10
10
  Apruve::OrderItem.new(
11
11
  title: 'line 1',
12
- amount_cents: '1230',
13
12
  price_ea_cents: '123',
14
13
  quantity: 10,
15
14
  description: 'A line item',
@@ -20,22 +19,29 @@ describe Apruve::Order do
20
19
  ),
21
20
  Apruve::OrderItem.new(
22
21
  title: 'line 2',
23
- amount_cents: '40'
22
+ price_ea_cents: '40'
24
23
  )
25
24
  ]
26
25
  end
27
26
 
27
+ let (:payment_term) do
28
+ {
29
+ corporate_account_id: '612e5383e4acc6c2213f3cae6208e868'
30
+ }
31
+ end
32
+
28
33
  let (:payment_request) do
29
34
  Apruve::Order.new(
30
- merchant_id: '9999',
35
+ merchant_id: '9a9c3389fdc281b5c6c8d542a7e91ff6',
36
+ shopper_id: '9bc388fd08ce2835cfeb2e630316f7f1',
31
37
  merchant_order_id: 'ABC',
32
38
  amount_cents: 12340,
33
39
  tax_cents: 0,
34
40
  shipping_cents: 0,
35
- expire_at: '2014-07-22T00:00:00+00:00',
36
41
  order_items: order_items,
37
42
  finalize_on_create: false,
38
- invoice_on_create: false
43
+ invoice_on_create: false,
44
+ payment_term: payment_term
39
45
  )
40
46
  end
41
47
  subject { payment_request }
@@ -55,18 +61,17 @@ describe Apruve::Order do
55
61
 
56
62
  describe '#to_json' do
57
63
  let(:expected) do
58
- "{\"merchant_id\":\"9999\",\"merchant_order_id\":\"ABC\",\"amount_cents\":12340,\"tax_cents\":0,"\
59
- "\"shipping_cents\":0,\"expire_at\":\"2014-07-22T00:00:00+00:00\",\"order_items\":[{\"title\":\"line 1\",\"amount_cents\":\"1230\","\
60
- "\"price_ea_cents\":\"123\",\"quantity\":10,\"description\":\"A line item\",\"variant_info\":\"small\","\
61
- "\"sku\":\"LINE1SKU\",\"vendor\":\"acme, inc.\",\"view_product_url\":\"http://www.apruve.com/doc\"},"\
62
- "{\"title\":\"line 2\",\"amount_cents\":\"40\"}],\"finalize_on_create\":false,\"invoice_on_create\":false}"
64
+ "{\"merchant_id\":\"9a9c3389fdc281b5c6c8d542a7e91ff6\",\"shopper_id\":\"9bc388fd08ce2835cfeb2e630316f7f1\",\"merchant_order_id\":\"ABC\","\
65
+ "\"amount_cents\":12340,\"tax_cents\":0,\"shipping_cents\":0,\"order_items\":[{\"title\":\"line 1\",\"price_ea_cents\":\"123\",\"quantity\":10,"\
66
+ "\"description\":\"A line item\",\"variant_info\":\"small\",\"sku\":\"LINE1SKU\",\"vendor\":\"acme, inc.\",\"view_product_url\":\"http://www.apruve.com/doc\""\
67
+ "},{\"title\":\"line 2\",\"price_ea_cents\":\"40\"}],\"finalize_on_create\":false,\"invoice_on_create\":false,\"payment_term\":{\"corporate_account_id\":\"612e5383e4acc6c2213f3cae6208e868\"}}"
63
68
  end
64
69
  its(:to_json) { should eq expected }
65
70
  end
66
71
 
67
72
  describe '#value_string' do
68
73
  let(:expected) do
69
- '9999ABC12340002014-07-22T00:00:00+00:00falsefalseline 1123012310A line itemsmallLINE1SKUacme, inc.http://www.apruve.com/docline 240'
74
+ '9a9c3389fdc281b5c6c8d542a7e91ff6ABC1234000falsefalseline 112310A line itemsmallLINE1SKUacme, inc.http://www.apruve.com/docline 240'
70
75
  end
71
76
  its(:value_string) { should eq expected }
72
77
  end
@@ -82,7 +87,7 @@ describe Apruve::Order do
82
87
  end
83
88
  end
84
89
  describe 'with api_key' do
85
- let (:hash) { '9aa1dda31ecd611ed759e132c2c4afec810409e49866db0090d8fa51fe4ad597' }
90
+ let (:hash) { 'a69b444d356b8afc68fc9c84e1686f645a539cc1975d07ef0d7a51e38a12b66c' }
86
91
  let (:api_key) { 'an_api_key' }
87
92
  before :each do
88
93
  Apruve.configure(api_key)
@@ -136,6 +141,38 @@ describe Apruve::Order do
136
141
  end
137
142
  end
138
143
 
144
+ describe '#save' do
145
+ let (:id) { '89ea2488fe0a5c7bb38aa7f9b088874a' }
146
+ let (:status) { 'pending' }
147
+ let (:api_url) { Faker::Internet.url }
148
+ let (:view_url) { Faker::Internet.url }
149
+ let (:response) do
150
+ {
151
+ id: id,
152
+ status: status,
153
+ api_url: api_url,
154
+ view_url: view_url
155
+ }
156
+ end
157
+ describe 'success' do
158
+ let! (:stubs) do
159
+ faraday_stubs do |stub|
160
+ stub.post(
161
+ "/api/v4/orders",
162
+ payment_request.to_json,
163
+ ) { [201, {}, response.to_json] }
164
+ end
165
+ end
166
+
167
+ it 'should do a post' do
168
+ payment_request.save!
169
+ expect(payment_request.id).to eq id
170
+ expect(payment_request.status).to eq status
171
+ stubs.verify_stubbed_calls
172
+ end
173
+ end
174
+ end
175
+
139
176
  describe '#finalize' do
140
177
  let (:id) { '89ea2488fe0a5c7bb38aa7f9b088874a' }
141
178
  describe 'success' do
@@ -192,7 +229,7 @@ describe Apruve::Order do
192
229
 
193
230
  describe '#update' do
194
231
  let (:id) { '89ea2488fe0a5c7bb38aa7f9b088874a' }
195
- let (:order) { Apruve::Order.new id: id, merchant_id: 9999 }
232
+ let (:order) { Apruve::Order.new id: id, merchant_id: 9999, payment_term: payment_term }
196
233
  describe 'success' do
197
234
  let! (:stubs) do
198
235
  faraday_stubs do |stub|
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apruve
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3
4
+ version: 1.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Apruve, Inc.
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-01-05 00:00:00.000000000 Z
12
+ date: 2017-06-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -109,8 +109,10 @@ files:
109
109
  - lib/apruve/faraday_error_handler.rb
110
110
  - lib/apruve/resources.rb
111
111
  - lib/apruve/resources/apruve_object.rb
112
+ - lib/apruve/resources/corporate_account.rb
112
113
  - lib/apruve/resources/invoice.rb
113
114
  - lib/apruve/resources/invoice_item.rb
115
+ - lib/apruve/resources/invoice_return.rb
114
116
  - lib/apruve/resources/merchant.rb
115
117
  - lib/apruve/resources/order.rb
116
118
  - lib/apruve/resources/order_item.rb
@@ -127,7 +129,9 @@ files:
127
129
  - spec/apruve/apruve_spec.rb
128
130
  - spec/apruve/client_spec.rb
129
131
  - spec/apruve/config_spec.rb
132
+ - spec/apruve/resources/corporate_account_spec.rb
130
133
  - spec/apruve/resources/invoice_item_spec.rb
134
+ - spec/apruve/resources/invoice_return_spec.rb
131
135
  - spec/apruve/resources/invoice_spec.rb
132
136
  - spec/apruve/resources/merchant_spec.rb
133
137
  - spec/apruve/resources/order_item_spec.rb
@@ -167,7 +171,9 @@ test_files:
167
171
  - spec/apruve/apruve_spec.rb
168
172
  - spec/apruve/client_spec.rb
169
173
  - spec/apruve/config_spec.rb
174
+ - spec/apruve/resources/corporate_account_spec.rb
170
175
  - spec/apruve/resources/invoice_item_spec.rb
176
+ - spec/apruve/resources/invoice_return_spec.rb
171
177
  - spec/apruve/resources/invoice_spec.rb
172
178
  - spec/apruve/resources/merchant_spec.rb
173
179
  - spec/apruve/resources/order_item_spec.rb