mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Adds coverage on invoices section/table
This commit is contained in:
@@ -1016,15 +1016,69 @@ describe '
|
||||
let!(:order1) {
|
||||
create(:order_with_totals_and_distribution, user: user, distributor:,
|
||||
order_cycle: order_cycle, state: 'complete',
|
||||
payment_state: 'balance_due')
|
||||
payment_state: 'balance_due',
|
||||
customer_id: customer.id)
|
||||
}
|
||||
before do
|
||||
visit spree.edit_admin_order_path(order1)
|
||||
|
||||
context "editing the order" do
|
||||
before do
|
||||
visit spree.edit_admin_order_path(order1)
|
||||
end
|
||||
|
||||
it "displays the invoice tab" do
|
||||
expect(page).to have_content "Complete".upcase
|
||||
expect(page).to have_content "Invoices".upcase
|
||||
end
|
||||
end
|
||||
|
||||
it "displays the invoice tab" do
|
||||
expect(page).to have_content "Complete".upcase
|
||||
expect(page).to have_content "Invoices".upcase
|
||||
context "visiting the invoices tab" do
|
||||
let!(:table_header) {
|
||||
[
|
||||
"Date/Time",
|
||||
"Invoice Number",
|
||||
"Amount",
|
||||
"Status",
|
||||
"File",
|
||||
].join(" ").upcase
|
||||
}
|
||||
|
||||
let(:table_contents) {
|
||||
[
|
||||
Invoice.first.created_at.strftime('%B %d, %Y 12:00 AM').to_s,
|
||||
"1",
|
||||
"0.0",
|
||||
"Active",
|
||||
"Download"
|
||||
].join(" ")
|
||||
}
|
||||
let(:download_href) {
|
||||
"#{spree.print_admin_order_path(order1)}?invoice_id=#{Invoice.last.id}"
|
||||
}
|
||||
|
||||
before do
|
||||
visit spree.admin_order_invoices_path(order1)
|
||||
end
|
||||
|
||||
it "displays the invoices table" do
|
||||
# with no invoices, only the table header is displayed
|
||||
expect(page).to have_css "table.index"
|
||||
expect(page).to have_content "#{customer.first_name} #{customer.last_name} -"
|
||||
expect(page.find("table").text).to have_content(table_header)
|
||||
|
||||
# the New invoice button should be visible
|
||||
expect(page).to have_link "New Invoice"
|
||||
click_link 'New Invoice'
|
||||
|
||||
# and disappear after clicking
|
||||
expect(page).to have_no_link "New Invoice"
|
||||
|
||||
# creating an invoice, displays a second row
|
||||
expect(page.find("table").text).to have_content(table_contents)
|
||||
|
||||
# with a valid invoice download link
|
||||
expect(page).to have_link("Download",
|
||||
href: download_href)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user