The SELECT of ExpenseReportLine::fetch() was missing a comma after the
"tcheck_file" column. The concatenated SQL became
"... tcheck_file pjt.rowid as projet_id ..." which is a syntax error, so
the query always failed and fetch() returned -1.
This broke loading a single expense report line, both in the UI (confirm
delete line in expensereport/card.php) and in the REST API
(PUT /expensereports/{id}/lines/{lineid}).
The column is now also qualified with its table alias (fde.) for
consistency with the other columns of the SELECT.
Add a PHPUnit test (ExpenseReportTest::testExpenseReportLineFetch) that
creates an expense report with a line and reloads it: it fails before
the fix and passes after.
* Qual: Apply php-cs-fixer before changes
# Qual: Apply php-cs-fixer before changes
Apply php-cs-fixer before changes to make real changes stand out
in next commit.
* Qual: Improve test messages to help locate errors.
# Qual: Improve test messages to help locate errors.
Included a description of the test in the failing assertions to
help locate the error.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: Update spelling exception
# Qual: Update spelling exception
Formatting the code requires an update in the spelling exception list.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
* Qual: php-cs-fixer on phpunit test file
# Qual: php-cs-fixer on phpunit test file
Apply php-cs-fixer on phpunit test files so that future manual changes
stand out.
Fix the following errors when running recent phpunit:
Message: Too few arguments to function PHPUnit\Framework\TestCase::__construct(), 0 passed in
dolibarr/test/phpunit/DateLibTzFranceTest.php on line 63 and exactly
1 expected Location: phar:///usr/share/webapps/bin/phpunit.phar/phpunit/Framework/TestCase.php:265
Indeed, the old constructor had an optional $name='' parameter but the
new constructor reads like this:
public function __construct(string $name)
and the parameter is now mandatory.
The global variables are stored in $this, and in particular $db is used
through this mean. But $this->savdb is supposed to be the immutable
global state that is stored at the test class instantiation and restored
at the beginning of each test.
For $this->savdb, I don't think any consequences are created by this,
since the object is saved by each test anyway and the $db object is
mostly a query object within a transaction, but future change could use
this to inject a different stateful $db object to trace some behaviour
in the test for instance, so make sure the correct one is used.