2
0
forked from Wavyzz/dolibarr

Fix: Script tests on Windows where PHP executable is not in path. (#28565)

# Fix: Script tests (on Windows)

- Set `exit(255)` instead of `exit(-1)` in `scripts/bank/export-bank-receipts.php`.
  On *nix, the -1 converts into an exist code of 255 but on windows it
  is -1, making the test fail.
- Add a helper method to execute php scripts using the php binary used
  to run phpunit.

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
This commit is contained in:
MDW
2024-03-04 20:13:34 +01:00
committed by GitHub
parent 04670b92b3
commit 6f8b941c96
2 changed files with 31 additions and 7 deletions

View File

@@ -98,7 +98,7 @@ class ScriptsTest extends CommonClassTest
$returnvar = 0;
$output = array();
$result = exec($script, $output, $returnvar);
$result = $this->runPhpScript($script, $output, $returnvar);
print __METHOD__." result=".$result."\n";
print __METHOD__." output=".join("\n", $output)."\n";
@@ -156,21 +156,21 @@ class ScriptsTest extends CommonClassTest
$output = array();
$script = dirname(__FILE__).'/../../scripts/contracts/email_expire_services_to_customers.php test thirdparties';
$result = exec($script, $output, $returnvar);
$result = $this->runPhpScript($script, $output, $returnvar);
print __METHOD__." result=".$result."\n";
print __METHOD__." output=".join("\n", $output)."\n";
print __METHOD__." returnvar=".$returnvar."\n";
$this->assertEquals($returnvar, 0, 'email_expire_services_to_customers.php thirdparties');
$script = dirname(__FILE__).'/../../scripts/contracts/email_expire_services_to_customers.php test contacts -30';
$result = exec($script, $output, $returnvar);
$result = $this->runPhpScript($script, $output, $returnvar);
print __METHOD__." result=".$result."\n";
print __METHOD__." output=".join("\n", $output)."\n";
print __METHOD__." returnvar=".$returnvar."\n";
$this->assertEquals($returnvar, 0, 'email_expire_services_to_customers.php contacts');
$script = dirname(__FILE__).'/../../scripts/contracts/email_expire_services_to_representatives.php test -30';
$result = exec($script, $output, $returnvar);
$result = $this->runPhpScript($script, $output, $returnvar);
print __METHOD__." result=".$result."\n";
print __METHOD__." output=".join("\n", $output)."\n";
print __METHOD__." returnvar=".$returnvar."\n";
@@ -197,21 +197,21 @@ class ScriptsTest extends CommonClassTest
$output = array();
$script = dirname(__FILE__).'/../../scripts/invoices/email_unpaid_invoices_to_customers.php test thirdparties';
$result = exec($script, $output, $returnvar);
$result = $this->runPhpScript($script, $output, $returnvar);
print __METHOD__." result=".$result."\n";
print __METHOD__." output=".join("\n", $output)."\n";
print __METHOD__." returnvar=".$returnvar."\n";
$this->assertEquals($returnvar, 0, 'email_unpaid_invoices_to_customers.php thirdparties');
$script = dirname(__FILE__).'/../../scripts/invoices/email_unpaid_invoices_to_customers.php test contacts -30';
$result = exec($script, $output, $returnvar);
$result = $this->runPhpScript($script, $output, $returnvar);
print __METHOD__." result=".$result."\n";
print __METHOD__." output=".join("\n", $output)."\n";
print __METHOD__." returnvar=".$returnvar."\n";
$this->assertEquals($returnvar, 0, 'email_unpaid_invoices_to_customers.php contacts');
$script = dirname(__FILE__).'/../../scripts/invoices/email_unpaid_invoices_to_representatives.php test thirdparties';
$result = exec($script, $output, $returnvar);
$result = $this->runPhpScript($script, $output, $returnvar);
print __METHOD__." result=".$result."\n";
print __METHOD__." output=".join("\n", $output)."\n";
print __METHOD__." returnvar=".$returnvar."\n";