Improve topup tests

This commit is contained in:
Karl Erik Õunapuu 2020-09-10 13:00:05 +03:00
parent b3fd31f679
commit 58079c6955
No known key found for this signature in database
GPG key ID: C9DD647298A34764
2 changed files with 28 additions and 8 deletions

View file

@ -99,12 +99,13 @@ class Registrar < ApplicationRecord
} }
] ]
) )
SendEInvoiceJob.enqueue(invoice.id, payable: payable)
unless payable unless payable
InvoiceMailer.invoice_email(invoice: invoice, recipient: billing_email).deliver_now InvoiceMailer.invoice_email(invoice: invoice, recipient: billing_email).deliver_now
end end
SendEInvoiceJob.enqueue(invoice.id, payable: payable)
invoice invoice
end end

View file

@ -1,6 +1,8 @@
require 'test_helper' require 'test_helper'
class InvoiceTest < ActiveSupport::TestCase class InvoiceTest < ActiveSupport::TestCase
include ActionMailer::TestHelper
setup do setup do
@invoice = invoices(:one) @invoice = invoices(:one)
end end
@ -110,15 +112,32 @@ class InvoiceTest < ActiveSupport::TestCase
assert_equal 'street, city, state', invoice.seller_address assert_equal 'street, city, state', invoice.seller_address
end end
def test_assumes_correct_sum_amount_when_created_by_transaction def test_creates_invoice_with_bank_transaction_total
registrar = registrars(:bestnames) registrar = registrars(:bestnames)
transaction = bank_transactions(:one).dup
transaction.reference_no = registrar.reference_no
transaction.sum = 250
bank_transaction = bank_transactions(:one).dup invoice = Invoice.create_from_transaction!(transaction)
bank_transaction.reference_no = registrar.reference_no assert_equal 250, invoice.total
bank_transaction.sum = 5
bank_transaction.save
invoice = Invoice.create_from_transaction!(bank_transaction) transaction.sum = 146.88
assert_equal 5, invoice.total invoice = Invoice.create_from_transaction!(transaction)
assert_equal 146.88, invoice.total
transaction.sum = 0.99
invoice = Invoice.create_from_transaction!(transaction)
assert_equal 0.99, invoice.total
end
def test_emails_invoice_after_creating_topup_invoice
registrar = registrars(:bestnames)
transaction = bank_transactions(:one).dup
transaction.reference_no = registrar.reference_no
transaction.sum = 250
Invoice.create_from_transaction!(transaction)
assert_emails 1
end end
end end