mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2026-02-08 00:52:01 +01:00
Merge pull request #27895 from thibdrev/patch-1
qual: roundUpToNextMultiple()
This commit is contained in:
@@ -11369,7 +11369,7 @@ function isVisibleToUserType($type_user, &$menuentry, &$listofmodulesforexternal
|
||||
*/
|
||||
function roundUpToNextMultiple($n, $x = 5)
|
||||
{
|
||||
$result = (ceil($n) % $x === 0) ? ceil($n) : round(($n + $x / 2) / $x) * $x;
|
||||
$result = (ceil($n) % $x === 0) ? ceil($n) : (round(($n + $x / 2) / $x) * $x);
|
||||
return (int) $result;
|
||||
}
|
||||
|
||||
|
||||
@@ -1797,4 +1797,29 @@ class FunctionsLibTest extends PHPUnit\Framework\TestCase
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* testRoundUpToNextMultiple
|
||||
*
|
||||
* @return void;
|
||||
*/
|
||||
public function testRoundUpToNextMultiple()
|
||||
{
|
||||
$this->assertEquals(roundUpToNextMultiple(39.5), 40);
|
||||
$this->assertEquals(roundUpToNextMultiple(40), 40);
|
||||
$this->assertEquals(roundUpToNextMultiple(40.4), 45);
|
||||
$this->assertEquals(roundUpToNextMultiple(40.5), 45);
|
||||
$this->assertEquals(roundUpToNextMultiple(44.5), 45);
|
||||
|
||||
$this->assertEquals(roundUpToNextMultiple(39.5, 10), 40);
|
||||
$this->assertEquals(roundUpToNextMultiple(40, 10), 40);
|
||||
$this->assertEquals(roundUpToNextMultiple(40.5, 10), 50);
|
||||
$this->assertEquals(roundUpToNextMultiple(44.5, 10), 50);
|
||||
|
||||
$this->assertEquals(roundUpToNextMultiple(39.5, 6), 42);
|
||||
$this->assertEquals(roundUpToNextMultiple(40, 6), 42);
|
||||
$this->assertEquals(roundUpToNextMultiple(40.5, 6), 42);
|
||||
$this->assertEquals(roundUpToNextMultiple(44.5, 6), 48);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user