ledgersmb / LedgerSMB

Double-entry accounting & ERP for the web
https://ledgersmb.org
Other
429 stars 152 forks source link

make devtest does not work with public db namespace #8508

Open neilt opened 2 days ago

neilt commented 2 days ago

When running test on 1.13-dev I encountered a number of errors like

[  FAIL  ]  job 110  + When I navigate the menu and select the item at "General Journal > Year End"
[  DEBUG ]  job 110    xt/66-cucumber/01-basic/closing.feature line 28
(  DIAG  )  job 110      in step at xt/66-cucumber/01-basic/closing.feature line 28.
(  DIAG  )  job 110        not ok - Step ran to completion
(  DIAG  )  job 110        # Failed test 'Step ran to completion'
(  DIAG  )  job 110        # at /usr/local/share/perl/5.40.0/Test/BDD/Cucumber/Executor.pm line 655.
(  DIAG  )  job 110        # Exception: 
(  DIAG  )  job 110        # Can't locate object method "menu" via package "PageObject::App::Login" at /srv/ledgersmb/xt/lib/Pherkin/Extension/pageobject_steps/nav_steps.pl line 79.
(  DIAG  )  job 110        1..1
(  DIAG  )  job 110        # Looks like you failed 1 test of 1.

In my setup script the following line was commented out:

# sed -i -e 's/db_namespace = public/db_namespace = xyz/' LedgerSMB/ledgersmb.conf

Uncommenting it fixed everything. So it seems that:

  1. The tests no longer run in the public db namespace and this is a bug, or
  2. The tests require the db namespace to be xyz. In which case there should be a check in the code such that if the correct namespace is not available it should error out and report the need for the correct namespace.
neilt commented 2 days ago

It turns out that xyz is required for the tests to work and is hard coded right now.

That means that 2. above needs to be handled.

@ehuelsmann In addition, why is the default config file not using 'xyz' to begin with?