]> granicus.if.org Git - php/commitdiff
new test
authorAntony Dovgal <tony2001@php.net>
Fri, 20 Apr 2007 09:17:37 +0000 (09:17 +0000)
committerAntony Dovgal <tony2001@php.net>
Fri, 20 Apr 2007 09:17:37 +0000 (09:17 +0000)
Zend/tests/double_to_string_64bit.phpt [new file with mode: 0644]

diff --git a/Zend/tests/double_to_string_64bit.phpt b/Zend/tests/double_to_string_64bit.phpt
new file mode 100644 (file)
index 0000000..c52c38c
--- /dev/null
@@ -0,0 +1,56 @@
+--TEST--
+double to string conversion tests (64bit)
+--SKIPIF--
+<?php if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only"); ?>
+--FILE--
+<?php
+
+$doubles = array(
+        29000000000000000000000000000000000000,
+        290000000000000000,
+        290000000000000,
+        29000000000000,
+        29000000000000.123123,
+        29000000000000.7123123,
+        29000.7123123,
+        239234242.7123123,
+        0.12345678901234567890,
+        10000000000000000000000000000000000000000000000,
+        1000000000000000000000000000000000,
+        100000000000000001,
+        1000006000000000011,
+        100000000000001,
+        10000000000,
+        999999999999999999,
+        9999999999999999999,
+        9999999999999999999999999999999999999,
+        (float)0
+        );
+
+foreach ($doubles as $d) {
+        var_dump((string)$d);
+}
+
+echo "Done\n";
+?>
+--EXPECTF--
+string(7) "2.9E+37"
+string(18) "290000000000000000"
+string(15) "290000000000000"
+string(14) "29000000000000"
+string(14) "29000000000000"
+string(14) "29000000000001"
+string(13) "29000.7123123"
+string(15) "239234242.71231"
+string(16) "0.12345678901235"
+string(7) "1.0E+46"
+string(7) "1.0E+33"
+string(18) "100000000000000001"
+string(19) "1000006000000000011"
+string(15) "100000000000001"
+string(11) "10000000000"
+string(18) "999999999999999999"
+string(7) "1.0E+19"
+string(7) "1.0E+37"
+string(1) "0"
+Done