myfinance 0.7.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +3 -2
- data/CHANGELOG.md +15 -0
- data/Gemfile.lock +1 -1
- data/README.md +304 -1
- data/lib/myfinance.rb +12 -0
- data/lib/myfinance/client.rb +16 -0
- data/lib/myfinance/entities/bank_statement.rb +16 -0
- data/lib/myfinance/entities/credit_card.rb +19 -0
- data/lib/myfinance/entities/credit_card_collection.rb +11 -0
- data/lib/myfinance/entities/credit_card_transaction.rb +26 -0
- data/lib/myfinance/entities/credit_card_transaction_collection.rb +11 -0
- data/lib/myfinance/entities/financial_account.rb +1 -1
- data/lib/myfinance/entities/payable_account_collection.rb +14 -0
- data/lib/myfinance/entities/receivable_account_collection.rb +14 -0
- data/lib/myfinance/entities/reconcile_collection.rb +30 -0
- data/lib/myfinance/resources/bank_statement.rb +20 -0
- data/lib/myfinance/resources/category.rb +16 -0
- data/lib/myfinance/resources/classification_center.rb +1 -1
- data/lib/myfinance/resources/credit_card.rb +47 -0
- data/lib/myfinance/resources/credit_card_transaction.rb +47 -0
- data/lib/myfinance/resources/financial_account.rb +48 -7
- data/lib/myfinance/resources/financial_transaction.rb +13 -2
- data/lib/myfinance/resources/person.rb +1 -1
- data/lib/myfinance/resources/reconcile.rb +20 -0
- data/lib/myfinance/version.rb +1 -1
- data/spec/lib/myfinance/client_spec.rb +21 -0
- data/spec/lib/myfinance/entities/credit_card_collection_spec.rb +23 -0
- data/spec/lib/myfinance/entities/credit_card_spec.rb +7 -0
- data/spec/lib/myfinance/entities/credit_card_transaction_collection_spec.rb +21 -0
- data/spec/lib/myfinance/entities/credit_card_transaction_spec.rb +8 -0
- data/spec/lib/myfinance/entities/reconcile_collection_spec.rb +20 -0
- data/spec/lib/myfinance/resources/bank_statement_spec.rb +53 -0
- data/spec/lib/myfinance/resources/category_spec.rb +24 -3
- data/spec/lib/myfinance/resources/classification_center_spec.rb +12 -5
- data/spec/lib/myfinance/resources/credit_card_spec.rb +142 -0
- data/spec/lib/myfinance/resources/credit_card_transaction_spec.rb +162 -0
- data/spec/lib/myfinance/resources/financial_transaction_spec.rb +27 -2
- data/spec/lib/myfinance/resources/payable_account_spec.rb +131 -15
- data/spec/lib/myfinance/resources/person_spec.rb +16 -4
- data/spec/lib/myfinance/resources/receivable_account_spec.rb +132 -15
- data/spec/lib/myfinance/resources/reconcile_spec.rb +33 -0
- data/spec/support/bank_statements/extrato.ofx +207 -0
- metadata +35 -2
@@ -4,24 +4,49 @@ describe Myfinance::Resources::FinancialTransaction, vcr: true do
|
|
4
4
|
let(:da_id) { 14268 }
|
5
5
|
let(:ent_id) { 3798 }
|
6
6
|
let(:ft_id) { 1663920 }
|
7
|
+
let(:page) { 2 }
|
7
8
|
let(:financial_transactions) { client.financial_transactions }
|
8
9
|
let(:params) { { amount: 68.5, occurred_at: "2011-07-15", type: "Debit" } }
|
9
10
|
let(:request_error) { Myfinance::RequestError }
|
10
11
|
|
11
12
|
describe "#find_all" do
|
12
13
|
context "when successful" do
|
13
|
-
subject { client.financial_transactions.find_all(ent_id, da_id) }
|
14
14
|
before :each do
|
15
15
|
subject.build
|
16
16
|
end
|
17
17
|
|
18
|
+
subject { client.financial_transactions.find_all(ent_id, da_id, page) }
|
19
|
+
|
18
20
|
it "returns a 200 OK response code" do
|
19
21
|
expect(subject.response.code).to eq(200)
|
20
22
|
end
|
21
23
|
|
22
|
-
it "
|
24
|
+
it "returns URL with next page" do
|
25
|
+
url = subject.response.request.base_url
|
26
|
+
expect(url).to include("?page=#{page}")
|
27
|
+
end
|
28
|
+
|
29
|
+
it "returns collection of FinancialTransactions" do
|
23
30
|
expect(subject).to be_a(Myfinance::Entities::FinancialTransactionCollection)
|
24
31
|
end
|
32
|
+
|
33
|
+
context "without pagination" do
|
34
|
+
subject { client.financial_transactions.find_all(ent_id, da_id) }
|
35
|
+
|
36
|
+
it "returns a 200 OK response code" do
|
37
|
+
expect(subject.response.code).to eq(200)
|
38
|
+
end
|
39
|
+
|
40
|
+
it "returns collection of FinancialTransactions" do
|
41
|
+
expect(subject).to be_a(Myfinance::Entities::FinancialTransactionCollection)
|
42
|
+
end
|
43
|
+
|
44
|
+
it "does not return URL for next page" do
|
45
|
+
url = subject.response.request.base_url
|
46
|
+
expect(url).not_to include("?page=#{page}")
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
25
50
|
end
|
26
51
|
|
27
52
|
context "when supplying invalid IDs" do
|
@@ -2,6 +2,82 @@ require "spec_helper"
|
|
2
2
|
|
3
3
|
describe Myfinance::Resources::PayableAccount do
|
4
4
|
let(:entity_id) { 3798 }
|
5
|
+
let(:pa_id) { 1235663 }
|
6
|
+
let(:page) { 2 }
|
7
|
+
let(:url) { subject.response.request.base_url }
|
8
|
+
let(:request_error) { Myfinance::RequestError }
|
9
|
+
|
10
|
+
describe "#find_all", vcr: true do
|
11
|
+
before :each do
|
12
|
+
subject.build
|
13
|
+
end
|
14
|
+
context "with pagination" do
|
15
|
+
subject { client.payable_accounts.find_all(entity_id, page) }
|
16
|
+
|
17
|
+
it "returns 200 OK response code" do
|
18
|
+
expect(subject.response.code).to eq(200)
|
19
|
+
end
|
20
|
+
|
21
|
+
it "returns a PayableAccount collection" do
|
22
|
+
expect(subject).to be_a(Myfinance::Entities::PayableAccountCollection)
|
23
|
+
end
|
24
|
+
|
25
|
+
it "returns a paginated URL" do
|
26
|
+
expect(url).to include("?page=#{page}")
|
27
|
+
end
|
28
|
+
|
29
|
+
context "with invalid page" do
|
30
|
+
subject { client.payable_accounts.find_all(entity_id, 42424242) }
|
31
|
+
|
32
|
+
it "returns empty collection" do
|
33
|
+
expect(subject.collection).to be_empty
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
context "without pagination" do
|
39
|
+
subject { client.payable_accounts.find_all(entity_id) }
|
40
|
+
|
41
|
+
it "returns 200 OK response code" do
|
42
|
+
expect(subject.response.code).to eq(200)
|
43
|
+
end
|
44
|
+
|
45
|
+
it "returns a PayableAccount collection" do
|
46
|
+
expect(subject).to be_a(Myfinance::Entities::PayableAccountCollection)
|
47
|
+
end
|
48
|
+
|
49
|
+
it "returns a paginated URL" do
|
50
|
+
expect(url).not_to include("?page=#{page}")
|
51
|
+
end
|
52
|
+
|
53
|
+
context "with invalid entity id" do
|
54
|
+
it "raises 404 not found error" do
|
55
|
+
expect { client.payable_accounts.find_all(nil) }.to raise_error(request_error) do |e|
|
56
|
+
expect(e.code).to eq(404)
|
57
|
+
expect(e.message).to eq("Not Found")
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
describe "#find", vcr: true do
|
65
|
+
subject { client.payable_accounts.find(entity_id, pa_id) }
|
66
|
+
|
67
|
+
it "returns a PayableAccount" do
|
68
|
+
expect(subject).to be_a(Myfinance::Entities::PayableAccount)
|
69
|
+
end
|
70
|
+
|
71
|
+
context "with invalid ID" do
|
72
|
+
subject { client.payable_accounts.find(nil, nil) }
|
73
|
+
|
74
|
+
it "raises 404 not found error" do
|
75
|
+
expect { subject }.to raise_error(request_error) do |e|
|
76
|
+
expect(e.code).to eq(404)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
5
81
|
|
6
82
|
describe "#create", vcr: true do
|
7
83
|
let(:params) { { due_date: '2015-08-15', amount: 150.99 } }
|
@@ -61,26 +137,28 @@ describe Myfinance::Resources::PayableAccount do
|
|
61
137
|
context "when any data is invalid" do
|
62
138
|
let(:params) { { due_date: '', amount: 150.99 } }
|
63
139
|
|
64
|
-
it "raises
|
65
|
-
expect { subject }.to raise_error(
|
140
|
+
it "raises request_error" do
|
141
|
+
expect { subject }.to raise_error(request_error)
|
66
142
|
end
|
67
143
|
|
68
144
|
it "adds information on request error object" do
|
69
|
-
|
70
|
-
expect
|
145
|
+
body = { "competency_month" => ["não pode ser vazio"], "due_date" => ["não é uma data válida"] }
|
146
|
+
expect(request_error).to receive(:new).with(code: 422, message: "", body: body).and_call_original
|
147
|
+
expect { subject }.to raise_error(request_error)
|
71
148
|
end
|
72
149
|
end
|
73
150
|
|
74
151
|
context "when entity does not exist" do
|
75
152
|
subject { client.payable_accounts.create(555, params) }
|
76
153
|
|
77
|
-
it "raises
|
78
|
-
expect { subject }.to raise_error(
|
154
|
+
it "raises request_error" do
|
155
|
+
expect { subject }.to raise_error(request_error)
|
79
156
|
end
|
80
157
|
|
81
158
|
it "adds information on request error object" do
|
82
|
-
|
83
|
-
expect
|
159
|
+
body = {"error" => "Você não tem permissão para acessar este recurso." }
|
160
|
+
expect(request_error).to receive(:new).with(code: 403, message: "Forbidden", body: body).and_call_original
|
161
|
+
expect { subject }.to raise_error(request_error)
|
84
162
|
end
|
85
163
|
end
|
86
164
|
end
|
@@ -106,7 +184,7 @@ describe Myfinance::Resources::PayableAccount do
|
|
106
184
|
let(:params) { { total_amount: nil, occurred_at: '2015-08-05', amount: 150.99 } }
|
107
185
|
|
108
186
|
it "raises request error" do
|
109
|
-
expect { subject }.to raise_error(
|
187
|
+
expect { subject }.to raise_error(request_error)
|
110
188
|
end
|
111
189
|
end
|
112
190
|
end
|
@@ -127,7 +205,7 @@ describe Myfinance::Resources::PayableAccount do
|
|
127
205
|
end
|
128
206
|
|
129
207
|
describe "#update", vcr: true do
|
130
|
-
subject { client.payable_accounts.update(
|
208
|
+
subject { client.payable_accounts.update(entity_id, 1235050, { amount: 100.00 }) }
|
131
209
|
|
132
210
|
context "when payable account exists" do
|
133
211
|
it "returns true" do
|
@@ -136,16 +214,16 @@ describe Myfinance::Resources::PayableAccount do
|
|
136
214
|
end
|
137
215
|
|
138
216
|
context "when payable account does not exist" do
|
139
|
-
subject { client.payable_accounts.update(
|
217
|
+
subject { client.payable_accounts.update(entity_id, 9999999, { amount: 100.00 }) }
|
140
218
|
|
141
219
|
it "raises request error" do
|
142
|
-
expect { subject }.to raise_error(
|
220
|
+
expect { subject }.to raise_error(request_error)
|
143
221
|
end
|
144
222
|
end
|
145
223
|
end
|
146
224
|
|
147
225
|
describe "#destroy", vcr: true do
|
148
|
-
subject { client.payable_accounts.destroy(
|
226
|
+
subject { client.payable_accounts.destroy(entity_id, 1215631) }
|
149
227
|
|
150
228
|
context "when payable account exists" do
|
151
229
|
it "returns true" do
|
@@ -154,10 +232,48 @@ describe Myfinance::Resources::PayableAccount do
|
|
154
232
|
end
|
155
233
|
|
156
234
|
context "when payable account does not exist" do
|
157
|
-
subject { client.payable_accounts.destroy(
|
235
|
+
subject { client.payable_accounts.destroy(entity_id, 1215631099) }
|
158
236
|
|
159
237
|
it "raises request error" do
|
160
|
-
expect { subject }.to raise_error(
|
238
|
+
expect { subject }.to raise_error(request_error)
|
239
|
+
end
|
240
|
+
end
|
241
|
+
end
|
242
|
+
|
243
|
+
describe "#destroy_recurrence", vcr: true do
|
244
|
+
let(:params) { { due_date: "2015-08-15", amount: 150.99, create_as_recurrent: "annual" } }
|
245
|
+
let(:new_pa) { client.payable_accounts.create(entity_id, params) }
|
246
|
+
|
247
|
+
before :each do
|
248
|
+
client.payable_accounts.destroy_recurrence(entity_id, new_pa.id)
|
249
|
+
end
|
250
|
+
|
251
|
+
it "does not find recurrent payable accounts" do
|
252
|
+
expect { client.payable_accounts.find(entity_id, new_pa.id) }.to raise_error(request_error) do |e|
|
253
|
+
expect(e.code).to eq(404)
|
254
|
+
expect(e.message).to eq("Not Found")
|
255
|
+
end
|
256
|
+
|
257
|
+
expect { client.payable_accounts.find(entity_id, new_pa.id + 1) }.to raise_error(request_error) do |e|
|
258
|
+
expect(e.code).to eq(404)
|
259
|
+
expect(e.message).to eq("Not Found")
|
260
|
+
end
|
261
|
+
end
|
262
|
+
end
|
263
|
+
|
264
|
+
describe "#destroy_many", vcr: true do
|
265
|
+
let(:params) { { due_date: "2015-08-15", amount: 150.99 } }
|
266
|
+
let(:new_pa) { client.payable_accounts.create(entity_id, params) }
|
267
|
+
let(:new_pa2) { client.payable_accounts.create(entity_id, params) }
|
268
|
+
|
269
|
+
before :each do
|
270
|
+
client.payable_accounts.destroy_many(entity_id, [new_pa.id, new_pa2.id])
|
271
|
+
end
|
272
|
+
|
273
|
+
it "does not find created PayableAccount" do
|
274
|
+
expect { client.payable_accounts.find(entity_id, new_pa.id) }.to raise_error(request_error) do |e|
|
275
|
+
expect(e.code).to eq(404)
|
276
|
+
expect(e.message).to eq("Not Found")
|
161
277
|
end
|
162
278
|
end
|
163
279
|
end
|
@@ -29,12 +29,24 @@ describe Myfinance::Resources::Person, vcr: true do
|
|
29
29
|
|
30
30
|
describe "#find_by" do
|
31
31
|
context "with success" do
|
32
|
-
|
33
|
-
|
32
|
+
it "find people by attributte name_equals" do
|
33
|
+
result = client.people.find_by(
|
34
|
+
{ name_equals: "Myfreecomm", person_type_in: "JuridicalPerson" }
|
35
|
+
)
|
36
|
+
expect(result).to be_a(Myfinance::Entities::PersonCollection)
|
37
|
+
expect(result.collection.first.name).to eq("Myfreecomm")
|
38
|
+
end
|
39
|
+
|
40
|
+
it "find people by attributte name_equals with special characters" do
|
41
|
+
result = client.people.find_by({ name_equals: "João das neves"})
|
42
|
+
expect(result).to be_a(Myfinance::Entities::PersonCollection)
|
43
|
+
expect(result.collection.first.name).to eq("João das neves")
|
34
44
|
end
|
35
45
|
|
36
|
-
it "find people by attributte" do
|
37
|
-
result = client.people.find_by(
|
46
|
+
it "find people by attributte federation_subscription_number_equals" do
|
47
|
+
result = client.people.find_by(
|
48
|
+
{ federation_subscription_number_equals: "42.308.611/0001-41" }
|
49
|
+
)
|
38
50
|
expect(result).to be_a(Myfinance::Entities::PersonCollection)
|
39
51
|
expect(result.collection.first.name).to eq("Myfreecomm")
|
40
52
|
end
|
@@ -2,6 +2,83 @@ require "spec_helper"
|
|
2
2
|
|
3
3
|
describe Myfinance::Resources::ReceivableAccount do
|
4
4
|
let(:entity_id) { 3798 }
|
5
|
+
let(:ra_id) { 1320786 }
|
6
|
+
let(:page) { 2 }
|
7
|
+
let(:url) { subject.response.request.base_url }
|
8
|
+
let(:request_error) { Myfinance::RequestError }
|
9
|
+
|
10
|
+
describe "#find_all", vcr: true do
|
11
|
+
before :each do
|
12
|
+
subject.build
|
13
|
+
end
|
14
|
+
|
15
|
+
context "with pagination" do
|
16
|
+
subject { client.receivable_accounts.find_all(entity_id, page) }
|
17
|
+
|
18
|
+
it "returns 200 OK response code" do
|
19
|
+
expect(subject.response.code).to eq(200)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "returns a ReceivableAccount collection" do
|
23
|
+
expect(subject).to be_a(Myfinance::Entities::ReceivableAccountCollection)
|
24
|
+
end
|
25
|
+
|
26
|
+
it "returns a paginated URL" do
|
27
|
+
expect(url).to include("?page=#{page}")
|
28
|
+
end
|
29
|
+
|
30
|
+
context "with invalid page" do
|
31
|
+
subject { client.receivable_accounts.find_all(entity_id, 42424242) }
|
32
|
+
|
33
|
+
it "returns empty collection" do
|
34
|
+
expect(subject.collection).to be_empty
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
context "without pagination" do
|
40
|
+
subject { client.receivable_accounts.find_all(entity_id) }
|
41
|
+
|
42
|
+
it "returns 200 OK response code" do
|
43
|
+
expect(subject.response.code).to eq(200)
|
44
|
+
end
|
45
|
+
|
46
|
+
it "returns a ReceivableAccount collection" do
|
47
|
+
expect(subject).to be_a(Myfinance::Entities::ReceivableAccountCollection)
|
48
|
+
end
|
49
|
+
|
50
|
+
it "returns a paginated URL" do
|
51
|
+
expect(url).not_to include("?page=#{page}")
|
52
|
+
end
|
53
|
+
|
54
|
+
context "with invalid entity id" do
|
55
|
+
it "raises 404 not found error" do
|
56
|
+
expect { client.receivable_accounts.find_all(nil) }.to raise_error(request_error) do |e|
|
57
|
+
expect(e.code).to eq(404)
|
58
|
+
expect(e.message).to eq("Not Found")
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
describe "#find", vcr: true do
|
66
|
+
subject { client.receivable_accounts.find(entity_id, ra_id) }
|
67
|
+
|
68
|
+
it "returns a ReceivableAccount" do
|
69
|
+
expect(subject).to be_a(Myfinance::Entities::ReceivableAccount)
|
70
|
+
end
|
71
|
+
|
72
|
+
context "with invalid ID" do
|
73
|
+
subject { client.receivable_accounts.find(nil, nil) }
|
74
|
+
|
75
|
+
it "raises 404 not found error" do
|
76
|
+
expect { subject }.to raise_error(request_error) do |e|
|
77
|
+
expect(e.code).to eq(404)
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
5
82
|
|
6
83
|
describe "#create", vcr: true do
|
7
84
|
let(:params) { { due_date: '2015-08-15', amount: 150.99 } }
|
@@ -61,26 +138,28 @@ describe Myfinance::Resources::ReceivableAccount do
|
|
61
138
|
context "when any data is invalid" do
|
62
139
|
let(:params) { { due_date: '', amount: 150.99 } }
|
63
140
|
|
64
|
-
it "raises
|
65
|
-
expect { subject }.to raise_error(
|
141
|
+
it "raises request_error" do
|
142
|
+
expect { subject }.to raise_error(request_error)
|
66
143
|
end
|
67
144
|
|
68
145
|
it "adds information on request error object" do
|
69
|
-
|
70
|
-
expect
|
146
|
+
body = { "competency_month" => ["não pode ser vazio"], "due_date" => ["não é uma data válida"] }
|
147
|
+
expect(request_error).to receive(:new).with(code: 422, message: "", body: body).and_call_original
|
148
|
+
expect { subject }.to raise_error(request_error)
|
71
149
|
end
|
72
150
|
end
|
73
151
|
|
74
152
|
context "when entity does not exist" do
|
75
153
|
subject { client.receivable_accounts.create(555, params) }
|
76
154
|
|
77
|
-
it "raises
|
78
|
-
expect { subject }.to raise_error(
|
155
|
+
it "raises request_error" do
|
156
|
+
expect { subject }.to raise_error(request_error)
|
79
157
|
end
|
80
158
|
|
81
159
|
it "adds information on request error object" do
|
82
|
-
|
83
|
-
expect
|
160
|
+
body = { "error" => "Você não tem permissão para acessar este recurso." }
|
161
|
+
expect(request_error).to receive(:new).with(code: 403, message: "Forbidden", body: body).and_call_original
|
162
|
+
expect { subject }.to raise_error(request_error)
|
84
163
|
end
|
85
164
|
end
|
86
165
|
end
|
@@ -106,7 +185,7 @@ describe Myfinance::Resources::ReceivableAccount do
|
|
106
185
|
let(:params) { { total_amount: nil, occurred_at: '2015-08-05', amount: 150.99 } }
|
107
186
|
|
108
187
|
it "raises request error" do
|
109
|
-
expect { subject }.to raise_error(
|
188
|
+
expect { subject }.to raise_error(request_error)
|
110
189
|
end
|
111
190
|
end
|
112
191
|
end
|
@@ -127,7 +206,7 @@ describe Myfinance::Resources::ReceivableAccount do
|
|
127
206
|
end
|
128
207
|
|
129
208
|
describe "#update", vcr: true do
|
130
|
-
subject { client.receivable_accounts.update(
|
209
|
+
subject { client.receivable_accounts.update(entity_id, 1235051, amount: 100.00) }
|
131
210
|
|
132
211
|
context "when payable account exists" do
|
133
212
|
it "returns true" do
|
@@ -136,16 +215,16 @@ describe Myfinance::Resources::ReceivableAccount do
|
|
136
215
|
end
|
137
216
|
|
138
217
|
context "when payable account does not exist" do
|
139
|
-
subject { client.receivable_accounts.update(
|
218
|
+
subject { client.receivable_accounts.update(entity_id, 9999999, amount: 100.00) }
|
140
219
|
|
141
220
|
it "raises request error" do
|
142
|
-
expect { subject }.to raise_error(
|
221
|
+
expect { subject }.to raise_error(request_error)
|
143
222
|
end
|
144
223
|
end
|
145
224
|
end
|
146
225
|
|
147
226
|
describe "#destroy", vcr: true do
|
148
|
-
subject { client.receivable_accounts.destroy(
|
227
|
+
subject { client.receivable_accounts.destroy(entity_id, 1215634) }
|
149
228
|
|
150
229
|
context "when receivable account exists" do
|
151
230
|
it "returns true" do
|
@@ -154,10 +233,48 @@ describe Myfinance::Resources::ReceivableAccount do
|
|
154
233
|
end
|
155
234
|
|
156
235
|
context "when receivable account does not exist" do
|
157
|
-
subject { client.receivable_accounts.destroy(
|
236
|
+
subject { client.receivable_accounts.destroy(entity_id, 1215631099) }
|
158
237
|
|
159
238
|
it "raises request error" do
|
160
|
-
expect { subject }.to raise_error(
|
239
|
+
expect { subject }.to raise_error(request_error)
|
240
|
+
end
|
241
|
+
end
|
242
|
+
end
|
243
|
+
|
244
|
+
describe "#destroy_recurrence", vcr: true do
|
245
|
+
let(:params) { { due_date: "2015-08-15", amount: 150.99, create_as_recurrent: "annual" } }
|
246
|
+
let(:new_ra) { client.receivable_accounts.create(entity_id, params) }
|
247
|
+
|
248
|
+
before :each do
|
249
|
+
client.receivable_accounts.destroy_recurrence(entity_id, new_ra.id)
|
250
|
+
end
|
251
|
+
|
252
|
+
it "does not find recurrent receivable accounts" do
|
253
|
+
expect { client.receivable_accounts.find(entity_id, new_ra.id) }.to raise_error(request_error) do |e|
|
254
|
+
expect(e.code).to eq(404)
|
255
|
+
expect(e.message).to eq("Not Found")
|
256
|
+
end
|
257
|
+
|
258
|
+
expect { client.receivable_accounts.find(entity_id, new_ra.id + 1) }.to raise_error(request_error) do |e|
|
259
|
+
expect(e.code).to eq(404)
|
260
|
+
expect(e.message).to eq("Not Found")
|
261
|
+
end
|
262
|
+
end
|
263
|
+
end
|
264
|
+
|
265
|
+
describe "#destroy_many", vcr: true do
|
266
|
+
let(:params) { { due_date: "2015-08-15", amount: 150.99 } }
|
267
|
+
let(:new_ra) { client.receivable_accounts.create(entity_id, params) }
|
268
|
+
let(:new_ra2) { client.receivable_accounts.create(entity_id, params) }
|
269
|
+
|
270
|
+
before :each do
|
271
|
+
client.receivable_accounts.destroy_many(entity_id, [new_ra.id, new_ra2.id])
|
272
|
+
end
|
273
|
+
|
274
|
+
it "does not find created ReceivableAccount" do
|
275
|
+
expect { client.receivable_accounts.find(entity_id, new_ra.id) }.to raise_error(request_error) do |e|
|
276
|
+
expect(e.code).to eq(404)
|
277
|
+
expect(e.message).to eq("Not Found")
|
161
278
|
end
|
162
279
|
end
|
163
280
|
end
|