From d9bbed4ff5f16837f26b43ddd6642058d56eca55 Mon Sep 17 00:00:00 2001 From: saggi-dw Date: Wed, 8 May 2024 13:53:05 +0200 Subject: [PATCH] extend the unit tests to cover new 'format'-setting --- _test/types/DecimalTest.php | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/_test/types/DecimalTest.php b/_test/types/DecimalTest.php index 52232cf2..e2bd9f16 100644 --- a/_test/types/DecimalTest.php +++ b/_test/types/DecimalTest.php @@ -102,7 +102,7 @@ public function test_validate_success($value, $min, $max, $decpoint = '.') public function valueProvider() { return [ - // $value, $expect, $roundto, $decpoint, $thousands, $trimzeros, $prefix='', $postfix='', $engineering = false + // $value, $expect, $roundto, $decpoint, $thousands, $trimzeros, $prefix='', $postfix='', $engineering = false, $format = '' ['5000', '5 000,00', '2', ',', ' ', false], ['5000', '5 000', '2', ',', ' ', true], ['5000', '5 000', '0', ',', ' ', false], @@ -149,6 +149,18 @@ public function valueProvider() ['1e15', '1000' . "\xE2\x80\xAF" . 'T', '-1', ',', ' ', true, '', '', true], ['1e-21', '0.001' . "\xE2\x80\xAF" . 'a', '-1', ',', ' ', true, '', '', true], + //format string + ['5000', '5 000', '-1', '.', ' ', true, '', '', false, ''], + ['5000', '5 000', '-1', '.', ' ', true, '', '', false, '%s'], + ['1.7', '1.70', '-1', '.', ' ', true, '', '', false, '%01.2f'], + ['1.7', '1.70' , '-1', '.', ' ', true, '', '', false, '%01.2F'], + ['1.7', '0001' , '-1', '.', ' ', true, '', '', false, "%'.04d"], + ['15', '1111' , '-1', '.', ' ', true, '', '', false, '%04b'], + ['362525200', '3.625e+8' , '-1', '.', ' ', true, '', '', false, '%.3e'], + ['362525200', '3.625E+8' , '-1', '.', ' ', true, '', '', false, '%.3E'], + ['1', '1 ' , '-1', '.', ' ', true, '', '', false, '%u'], + ['-1', '18446744073709551615' , '-1', '.', ' ', true, '', '', false, '%u'], + ]; } @@ -158,7 +170,8 @@ public function valueProvider() public function test_renderValue( $value, $expect, $roundto, $decpoint, $thousands, $trimzeros, - $prefix = '', $postfix = '', $engineering = false + $prefix = '', $postfix = '', $engineering = false, + $format = '' ) { $decimal = new Decimal([ @@ -168,7 +181,8 @@ public function test_renderValue( 'trimzeros' => $trimzeros, 'prefix' => $prefix, 'postfix' => $postfix, - 'engineering' => $engineering + 'engineering' => $engineering, + 'format' => $format ]); $R = new \Doku_Renderer_xhtml(); $R->doc = '';