////////////////// // Netherlands ////////////////// TEST _peppol_write_nl2nl_b2b(void) { administration_writer::create(); administration::create_default(test_file_path); add_default_nl_tax_rates(); invoice inv = administration::invoice_create_empty(); inv.supplier = _create_nl_business(); inv.customer = _create_nl_business(); inv.is_outgoing = 1; inv.status = invoice_status::INVOICE_CONCEPT; inv.issued_at = time(NULL); inv.delivered_at = inv.issued_at; inv.expires_at = inv.issued_at + 1000; administration::billing_item_add_to_invoice(&inv, _create_bix("Potato", 1, false, 10.0f, 0.0f, false, "NL/21")); administration::billing_item_add_to_invoice(&inv, _create_bix("Tomato", 3, false, 5.0f, 1.0f, false, "NL/9")); administration::billing_item_add_to_invoice(&inv, _create_bix("Banana", 5, false, 2.0f, 10.0f, true, "NL/9")); administration::billing_item_add_to_invoice(&inv, _create_bix("Guacamole", 1, false, 6.0f, 0.0f, true, "NL/0")); administration::billing_item_add_to_invoice(&inv, _create_bix("Glue", 1, false, 10.0f, 0.0f, false, "NL/BTV")); administration::billing_item_add_to_invoice(&inv, _create_bix("Glue 1", 1, false, 10.0f, 0.0f, false, "NL/BVB")); administration::billing_item_add_to_invoice(&inv, _create_bix("Glue 2", 1, false, 10.0f, 0.0f, false, "NL/PBEU")); administration::billing_item_add_to_invoice(&inv, _create_bix("Glue 3", 1, false, 10.0f, 0.0f, false, "NL/NBTW")); ASSERT_EQ(administration::invoice_add(&inv), A_ERR_SUCCESS); if (_test_peppol_file(inv.id)) { PASS(); } else { FAIL(); } } TEST _peppol_write_nl2nl_b2c(void) { administration_writer::create(); administration::create_default(test_file_path); add_default_nl_tax_rates(); invoice inv = administration::invoice_create_empty(); inv.supplier = _create_nl_business(); inv.customer = _create_nl_consumer(); inv.is_outgoing = 1; inv.status = invoice_status::INVOICE_CONCEPT; inv.issued_at = time(NULL); inv.delivered_at = inv.issued_at; inv.expires_at = inv.issued_at + 1000; administration::billing_item_add_to_invoice(&inv, _create_bix("Potato", 1, false, 10.0f, 0.0f, false, "NL/21")); administration::billing_item_add_to_invoice(&inv, _create_bix("Tomato", 3, false, 5.0f, 1.0f, false, "NL/9")); administration::billing_item_add_to_invoice(&inv, _create_bix("Banana", 5, false, 2.0f, 10.0f, true, "NL/9")); administration::billing_item_add_to_invoice(&inv, _create_bix("Guacamole", 1, false, 6.0f, 0.0f, true, "NL/0")); administration::billing_item_add_to_invoice(&inv, _create_bix("Glue", 1, false, 10.0f, 0.0f, false, "NL/BTV")); administration::billing_item_add_to_invoice(&inv, _create_bix("Glue 1", 1, false, 10.0f, 0.0f, false, "NL/BVB")); administration::billing_item_add_to_invoice(&inv, _create_bix("Glue 2", 1, false, 10.0f, 0.0f, false, "NL/PBEU")); administration::billing_item_add_to_invoice(&inv, _create_bix("Glue 3", 1, false, 10.0f, 0.0f, false, "NL/NBTW")); ASSERT_EQ(administration::invoice_add(&inv), A_ERR_SUCCESS); if (_test_peppol_file(inv.id)) { PASS(); } else { FAIL(); } } SUITE(peppol_write) { RUN_TEST(_peppol_write_nl2nl_b2b); RUN_TEST(_peppol_write_nl2nl_b2c); }