phpunit: use $db instead of $this->savdb

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.
This commit is contained in:
Alexandre Janniaux
2023-04-13 20:25:07 +02:00
parent 2635ec9c19
commit b6235c29d0
46 changed files with 198 additions and 194 deletions

View File

@@ -147,7 +147,7 @@ class FactureTest extends PHPUnit\Framework\TestCase
$langs=$this->savlangs;
$db=$this->savdb;
$localobject=new Facture($this->savdb);
$localobject=new Facture($db);
$localobject->initAsSpecimen();
$result=$localobject->create($user);
$this->assertLessThan($result, 0);
@@ -172,7 +172,7 @@ class FactureTest extends PHPUnit\Framework\TestCase
$langs=$this->savlangs;
$db=$this->savdb;
$localobject=new Facture($this->savdb);
$localobject=new Facture($db);
$result=$localobject->fetch($id);
$this->assertLessThan($result, 0);
@@ -228,7 +228,7 @@ class FactureTest extends PHPUnit\Framework\TestCase
$this->assertLessThan($result, 0);
// Test everything are still same than specimen
$newlocalobject=new Facture($this->savdb);
$newlocalobject=new Facture($db);
$newlocalobject->initAsSpecimen();
$this->changeProperties($newlocalobject);
@@ -308,11 +308,11 @@ class FactureTest extends PHPUnit\Framework\TestCase
unset($conf->global->INVOICE_CAN_ALWAYS_BE_REMOVED);
unset($conf->global->INVOICE_CAN_NEVER_BE_REMOVED);
$localobject=new Facture($this->savdb);
$localobject=new Facture($db);
$result=$localobject->fetch($id);
// Create another invoice and validate it after $localobject
$localobject2=new Facture($this->savdb);
$localobject2=new Facture($db);
$result=$localobject2->initAsSpecimen();
$result=$localobject2->create($user);
$result=$localobject2->validate($user);