#6149 (Use an integration environment rather than a sandbox for testing Ibanity)
by Luc Saffre · in Developers · assigned to Luc Saffre
Kurzbeschreibung
Kinder
Kommentare
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : I also started a manual pull_demos on LF (where the demo sites were broken during the last days because I had committed the lino repo too early).
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : I am about to push my changes. The test suite passes when I disable my Ibanity credentials (which is how they also run on GitLab), but they fail when I enable them (which means that #6149 is not yet done).
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : I am now trying to use the new option during_initdb=False for the generate_calendar_entries procedure as well. Indeed this procedure runs do_update_events on every EventGenerator instance, but quite some fixtures call this manually.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : In gerd, the number of cal.Guests changes from 675 to 2187. That's much.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : Uff, the test suite of book passes again on my machine. todo: welfare, presto & Co, And a plugin setting checkdata.fix_in_background
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) (1 Antwort) : In avanti1 I have a lot of new calendar events after my changes. I assume it is because the checker who creates missing automatic events now runs *before* the checker who reports conflicting events. As a side effect I consider setting EventState.suggested to transparent (i.e. Lino should not warn ab...
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : Uff, I'm almost ready to push my changes. Some internal optimizations: linod no longer uses a data checker to make sure that there is at least one task for every procedure, it checks this each time when starting the task runner.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : Aha, I finally understood how to let cosi1 send invoices to cosi2 via Peppol. I must indeed run the sync_peppol already during pm prep. And one thing I had been missing so far is that noi1e must also register our different fictive customers as suppliers, otherwise Ibanity refuses to accept invoices ...
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) (1 Antwort) : To meditate: can I manually call start_task_runner() in the outbound.rst and inbound.rst doctests? Shouldn't this rather be done once after pm prep? test_linod.py in noi1e manually calls lino.modlib.linod.mixins.start_task_runner() multiple times and tests their output. When testing outbound and inb...
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : I realized that I need a third demo project with Peppol features.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : I discovered only now that list_suppliers returns only 20 rows when you don't specify a page size, not 2000 as the docs suggest.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : I'm always getting "Customer not registered", even when I use one of our Peppol suppliers or one of their demo suppliers.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : todo: the "Send now" action shouldn't be available when the customer is a private person.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : The peppol demo fixture no creates new companies rather than using existing demo companies, which simplifies a few tests.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : Should I move from doctests to unit tests for testing the Ibanity API?
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : And I currently skip the second half of the doctests in book/plugins/peppol/documents.rst (inbound documents) because that needs more meditation. Anyway the sandbox test cases weren't very useful, so I'm not loosing coverage, I'm just not yet using all the new possibilities of the integration envir...
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : The company "Bestbank" was disturbing the Peppol integration tests because it is alphabetically between the three "Bäckerei" and "Garage Mergelsberg". In noi1e it doesn't exist because noi1e doesn't have with_finan. But in cosi1 it exists and that's why it was getting one of the first five random VA...
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) (1 Antwort) : todo: I need to rethink when to set the site_company. Some demo fixtures generate XML, which requires site_company to be set. The (fictive) VAT id of demo partners is set in the demo fixture of vat, which must come after the demo fixture of contacts.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : pm prep in noi1e now writes a file demo_data.py into its own site dir, which contains DEMO_SUPPLIERS = {vat_id:supplier_id for each peppol supplier}. This file is needed by cosi1 who needs to know their supplier_id. Side effect: I added a new signal database_prepared, which is also used by dbhash.ma...
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : Here is another fine error message: "Supplier data in document can't be matched with data of supplier. Value found in //cac:AccountingSupplierParty/cac:Party/cac:PartyName/cbc:Name can't be matched with internal supplier data: Rumma & Ko OÜ" Yes, that's because the supplier declared in the sales invo...
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) (1 Antwort) : todo: The Ibanity server is right when it complains in docs/plugins/peppol/api.rst about missing VAT in SLS 10/2015 (in noi1r). Why is there no VAT amount in this invoice? Maybe because the vat_class of the product ("Hourly rate") is empty?
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : Maybe my current problems are because in an integration environment we have a limited list of Peppol test receivers.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) (1 Antwort) : todo: Why are the suppliers on Ibanity currently all offboarded, even after pm prep in noi1e ?
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : todo: SuppliersListChecker needs to fill supplier_id when it's empty and when the Ibanity server has one.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : And here is a next validation error: [BR-S-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" the Invoiced item VAT rate (BT-152) shall be greater than zero.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : Cool, in the integration the outbound documents are actually being tested. Which revealed at least one problem: Peppol doesn't accept quantities expressed in hh:mm format.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : I fixed a bug in the lino_xl.lib.vat.ModValidator : Belgian VAT numbers have 10 positions, but they also must start with 0 or 1. This bug caused Lino to generate invalid fictive Belgian VAT numbers. But Ibanity didn't accept them.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : It's maybe a pity that I didn't realize this earlier (I will throw away the sandbox tests because they were actually quite useless), but I'm happy to have an approach for writing serious tests now. I'm advancing but there's still much to do.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : TIL that the Ibanity sandbox "is not meant for testing flows or statuses of invoices" and that we should "use the integration environment for that". This requires me to rethink the testing concept for the Peppol plugin.
- 1 Jahr, 4 Monate ago von Luc Saffre about #6149 (Use an integration environment rather than a sandbox for testing Ibanity) : Created new Ticket #6149 (Use an integration environment rather than a sandbox for testing Ibanity).