diff options
author | Yasuo Ohgaki <yohgaki@php.net> | 2015-08-31 18:59:32 +0900 |
---|---|---|
committer | Jakub Zelenka <bukka@php.net> | 2016-06-26 13:26:43 +0100 |
commit | c71550472a003cdab67d85de8b5e57268df65531 (patch) | |
tree | d78fc0f82311ea9e3c9ebea9a24bcbfadb0eccbd /tests | |
parent | 5f5dc04fc26f47fbe5172e0517887ffe3a1ff6cc (diff) | |
download | php-git-c71550472a003cdab67d85de8b5e57268df65531.tar.gz |
Fix mode when precision=0. Add test
Diffstat (limited to 'tests')
-rw-r--r-- | tests/basic/precision.phpt | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/tests/basic/precision.phpt b/tests/basic/precision.phpt new file mode 100644 index 0000000000..1d7dbdd443 --- /dev/null +++ b/tests/basic/precision.phpt @@ -0,0 +1,171 @@ +--TEST-- +precision setting test +--INI-- +precision=14 +serialize_precision=17 +--FILE-- +<?php +$v = array(123456789.012345678901234567890, 10/3, 987e100); + +echo "INI".PHP_EOL; +ini_set('precision', -1); +ini_set('serialize_precision', -1); +echo ini_get('precision'), PHP_EOL; +echo ini_get('serialize_precision'), PHP_EOL; +echo "OUTPUTS".PHP_EOL; +echo join($v, ' ').PHP_EOL; +print join($v, ' ').PHP_EOL; +var_dump(serialize($v)); +var_export($v);echo PHP_EOL; + + +echo "INI".PHP_EOL; +ini_set('precision', 0); +ini_set('serialize_precision', 0); +echo ini_get('precision'), PHP_EOL; +echo ini_get('serialize_precision'), PHP_EOL; +echo "OUTPUTS".PHP_EOL; +echo join($v, ' ').PHP_EOL; +print join($v, ' ').PHP_EOL; +var_dump(serialize($v)); +var_export($v);echo PHP_EOL; + +echo "INI".PHP_EOL; +ini_set('precision', 9); +ini_set('serialize_precision', 9); +echo ini_get('precision'), PHP_EOL; +echo ini_get('serialize_precision'), PHP_EOL; +echo "OUTPUTS".PHP_EOL; +echo join($v, ' ').PHP_EOL; +print join($v, ' ').PHP_EOL; +var_dump(serialize($v)); +var_export($v);echo PHP_EOL; + +echo "INI".PHP_EOL; +ini_set('precision', 14); +ini_set('serialize_precision', 14); +echo ini_get('precision'), PHP_EOL; +echo ini_get('serialize_precision'), PHP_EOL; +echo "OUTPUTS".PHP_EOL; +echo join($v, ' ').PHP_EOL; +print join($v, ' ').PHP_EOL; +var_dump(serialize($v)); +var_export($v);echo PHP_EOL; + +echo "INI".PHP_EOL; +ini_set('precision', 17); +ini_set('serialize_precision', 17); +echo ini_get('precision'), PHP_EOL; +echo ini_get('serialize_precision'), PHP_EOL; +echo "OUTPUTS".PHP_EOL; +echo join($v, ' ').PHP_EOL; +print join($v, ' ').PHP_EOL; +var_dump(serialize($v)); +var_export($v);echo PHP_EOL; + +echo "INI".PHP_EOL; +ini_set('precision', 25); +ini_set('serialize_precision', 25); +echo ini_get('precision'), PHP_EOL; +echo ini_get('serialize_precision'), PHP_EOL; +echo "OUTPUTS".PHP_EOL; +echo join($v, ' ').PHP_EOL; +print join($v, ' ').PHP_EOL; +var_dump(serialize($v)); +var_export($v);echo PHP_EOL; + +echo "INI".PHP_EOL; +ini_set('precision', 100); +ini_set('serialize_precision', 100); +echo ini_get('precision'), PHP_EOL; +echo ini_get('serialize_precision'), PHP_EOL; +echo "OUTPUTS".PHP_EOL; +echo join($v, ' ').PHP_EOL; +print join($v, ' ').PHP_EOL; +var_dump(serialize($v)); +var_export($v);echo PHP_EOL; +--EXPECT-- +INI +-1 +-1 +OUTPUTS +123456789.01234567 3.3333333333333335 9.87E+102 +123456789.01234567 3.3333333333333335 9.87E+102 +string(72) "a:3:{i:0;d:123456789.01234567;i:1;d:3.3333333333333335;i:2;d:9.87E+102;}" +array ( + 0 => 123456789.01234567, + 1 => 3.3333333333333335, + 2 => 9.87E+102, +) +INI +0 +0 +OUTPUTS +1.0E+8 3 1.0E+103 +1.0E+8 3 1.0E+103 +string(47) "a:3:{i:0;d:1.0E+8;i:1;d:3.0E+0;i:2;d:1.0E+103;}" +array ( + 0 => 1.0E+8, + 1 => 3.0E+0, + 2 => 1.0E+103, +) +INI +9 +9 +OUTPUTS +123456789 3.33333333 9.87E+102 +123456789 3.33333333 9.87E+102 +string(55) "a:3:{i:0;d:123456789;i:1;d:3.33333333;i:2;d:9.87E+102;}" +array ( + 0 => 123456789, + 1 => 3.33333333, + 2 => 9.87E+102, +) +INI +14 +14 +OUTPUTS +123456789.01235 3.3333333333333 9.87E+102 +123456789.01235 3.3333333333333 9.87E+102 +string(66) "a:3:{i:0;d:123456789.01235;i:1;d:3.3333333333333;i:2;d:9.87E+102;}" +array ( + 0 => 123456789.01235, + 1 => 3.3333333333333, + 2 => 9.87E+102, +) +INI +17 +17 +OUTPUTS +123456789.01234567 3.3333333333333335 9.8700000000000007E+102 +123456789.01234567 3.3333333333333335 9.8700000000000007E+102 +string(86) "a:3:{i:0;d:123456789.01234567;i:1;d:3.3333333333333335;i:2;d:9.8700000000000007E+102;}" +array ( + 0 => 123456789.01234567, + 1 => 3.3333333333333335, + 2 => 9.8700000000000007E+102, +) +INI +25 +25 +OUTPUTS +123456789.0123456716537476 3.33333333333333348136307 9.870000000000000687310143E+102 +123456789.0123456716537476 3.33333333333333348136307 9.870000000000000687310143E+102 +string(109) "a:3:{i:0;d:123456789.0123456716537476;i:1;d:3.33333333333333348136307;i:2;d:9.870000000000000687310143E+102;}" +array ( + 0 => 123456789.0123456716537476, + 1 => 3.33333333333333348136307, + 2 => 9.870000000000000687310143E+102, +) +INI +100 +100 +OUTPUTS +123456789.01234567165374755859375 3.333333333333333481363069950020872056484222412109375 9.87000000000000068731014283095442748328521861543465424509123736073120616987695396574376473706259651E+102 +123456789.01234567165374755859375 3.333333333333333481363069950020872056484222412109375 9.87000000000000068731014283095442748328521861543465424509123736073120616987695396574376473706259651E+102 +string(218) "a:3:{i:0;d:123456789.01234567165374755859375;i:1;d:3.333333333333333481363069950020872056484222412109375;i:2;d:9.87000000000000068731014283095442748328521861543465424509123736073120616987695396574376473706259651E+102;}" +array ( + 0 => 123456789.01234567165374755859375, + 1 => 3.333333333333333481363069950020872056484222412109375, + 2 => 9.87000000000000068731014283095442748328521861543465424509123736073120616987695396574376473706259651E+102, +) |