Skip to content

Commit caa9f82

Browse files
authored
feat: add support for invoice consolidation (#350)
* add support for invoice consolidation * fix linter * fix specs
1 parent c9c153a commit caa9f82

3 files changed

Lines changed: 6 additions & 1 deletion

File tree

lib/lago/api/resources/subscription.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,7 @@ def whitelist_params(params)
212212
subscription_at: params[:subscription_at],
213213
ending_at: params[:ending_at],
214214
plan_overrides: params[:plan_overrides],
215+
consolidate_invoice: params[:consolidate_invoice],
215216
}.compact
216217

217218
payment_method_params = whitelist_payment_method_params(params[:payment_method])

spec/factories/subscription.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,6 @@
1515
terminated_at { nil }
1616
canceled_at { nil }
1717
created_at { '2022-05-05T12:27:30Z' }
18+
consolidate_invoice { true }
1819
end
1920
end

spec/lago/api/resources/subscription_spec.rb

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
subscription_at: factory_subscription.subscription_at,
3636
billing_time: factory_subscription.billing_time,
3737
ending_at: factory_subscription.ending_at,
38+
consolidate_invoice: factory_subscription.consolidate_invoice,
3839
plan_overrides: {
3940
amount_cents: 1000,
4041
minimum_commitment: {
@@ -69,6 +70,7 @@
6970
expect(subscription.subscription_at).to eq(factory_subscription.subscription_at)
7071
expect(subscription.billing_time).to eq(factory_subscription.billing_time)
7172
expect(subscription.ending_at).to eq(factory_subscription.ending_at)
73+
expect(subscription.consolidate_invoice).to eq(factory_subscription.consolidate_invoice)
7274
end
7375
end
7476

@@ -240,7 +242,7 @@
240242
end
241243

242244
describe '#update' do
243-
let(:params) { { name: 'new name' } }
245+
let(:params) { { name: 'new name', consolidate_invoice: factory_subscription.consolidate_invoice } }
244246
let(:body) do
245247
{
246248
'subscription' => params,
@@ -261,6 +263,7 @@
261263
expect(subscription.plan_code).to eq(factory_subscription.plan_code)
262264
expect(subscription.status).to eq(factory_subscription.status)
263265
expect(subscription.external_id).to eq(factory_subscription.external_id)
266+
expect(subscription.consolidate_invoice).to eq(factory_subscription.consolidate_invoice)
264267
end
265268
end
266269

0 commit comments

Comments
 (0)