]> granicus.if.org Git - php/commitdiff
New php_uname() tests. Tested on Windows, Linux and linux 64
authorandy wharmby <wharmby@php.net>
Sun, 1 Feb 2009 19:17:46 +0000 (19:17 +0000)
committerandy wharmby <wharmby@php.net>
Sun, 1 Feb 2009 19:17:46 +0000 (19:17 +0000)
ext/standard/tests/general_functions/php_uname_basic.phpt [new file with mode: 0644]
ext/standard/tests/general_functions/php_uname_error.phpt [new file with mode: 0644]
ext/standard/tests/general_functions/php_uname_variation1.phpt [new file with mode: 0644]

diff --git a/ext/standard/tests/general_functions/php_uname_basic.phpt b/ext/standard/tests/general_functions/php_uname_basic.phpt
new file mode 100644 (file)
index 0000000..e62b2cb
--- /dev/null
@@ -0,0 +1,35 @@
+--TEST--
+Test php_uname() function - basic test
+--FILE--
+<?php
+/* Prototype: string php_uname  ([ string $mode  ] )
+ * Description:  Returns information about the operating system PHP is running on
+*/
+
+echo "*** Testing php_uname() - basic test\n";
+
+var_dump(php_uname());
+
+echo "\n-- Try all the defined mode's --\n";
+
+var_dump(php_uname('a'));
+var_dump(php_uname('s'));
+var_dump(php_uname('n'));
+var_dump(php_uname('r'));
+var_dump(php_uname('v'));
+var_dump(php_uname('m'));
+
+?>
+===DONE===
+--EXPECTF--
+*** Testing php_uname() - basic test
+unicode(%d) "%s"
+
+-- Try all the defined mode's --
+unicode(%d) "%s"
+unicode(%d) "%s"
+unicode(%d) "%s"
+unicode(%d) "%s"
+unicode(%d) "%s"
+unicode(%d) "%s"
+===DONE===
diff --git a/ext/standard/tests/general_functions/php_uname_error.phpt b/ext/standard/tests/general_functions/php_uname_error.phpt
new file mode 100644 (file)
index 0000000..c1b78f0
--- /dev/null
@@ -0,0 +1,56 @@
+--TEST--
+Test php_uname() function -  error conditions - pass function incorrect arguments
+--FILE--
+<?php
+/* Prototype: string php_uname  ([ string $mode  ] )
+ * Description:  Returns information about the operating system PHP is running on
+*/
+
+echo "*** Testing php_uname() - error test\n";
+
+echo "\n-- Testing php_uname() function with more than expected no. of arguments --\n";
+var_dump( php_uname('a', true) );
+
+echo "\n-- Testing php_uname() function with invalid mode --\n";
+// am invalid mode shoudl result in same o/p as mode 'a'
+var_dump( php_uname('z') == php_uname('z') ); 
+
+class barClass {
+}
+
+$fp = fopen(__FILE__, "r");
+
+echo "\n-- Testing php_uname() function with invalid argument types --\n";
+var_dump(php_uname(array()));
+var_dump(php_uname(array('color' => 'red', 'item' => 'pen')));
+var_dump(php_uname(new barClass()));
+var_dump(php_uname($fp));
+
+fclose($fp);
+?>
+===DONE===
+--EXPECTF--
+*** Testing php_uname() - error test
+
+-- Testing php_uname() function with more than expected no. of arguments --
+
+Warning: php_uname() expects at most 1 parameter, 2 given in %s on line %d
+NULL
+
+-- Testing php_uname() function with invalid mode --
+bool(true)
+
+-- Testing php_uname() function with invalid argument types --
+
+Warning: php_uname() expects parameter 1 to be binary string, array given in %s on line %d
+NULL
+
+Warning: php_uname() expects parameter 1 to be binary string, array given in %s on line %d
+NULL
+
+Warning: php_uname() expects parameter 1 to be binary string, object given in %s on line %d
+NULL
+
+Warning: php_uname() expects parameter 1 to be binary string, resource given in %s on line %d
+NULL
+===DONE===
diff --git a/ext/standard/tests/general_functions/php_uname_variation1.phpt b/ext/standard/tests/general_functions/php_uname_variation1.phpt
new file mode 100644 (file)
index 0000000..8767e60
--- /dev/null
@@ -0,0 +1,112 @@
+--TEST--
+Test php_uname() function -  usage variations
+--FILE--
+<?php
+/* Prototype: string php_uname  ([ string $mode  ] )
+ * Description:  Returns information about the operating system PHP is running on
+*/
+
+echo "*** Testing php_uname() - usage variations\n";
+// Prevent notices about undefines variables
+error_reporting(E_ALL & ~E_NOTICE);
+
+$unset_var = 10;
+unset ($unset_var);
+
+class fooClass {
+   function __toString() {
+       return "m";
+   }
+}
+
+$values = array(
+
+                 // int data
+                 "0" => 0,
+                 "1" => 1,
+                 "12345" =>  12345,
+                 "-2345" =>  -2345,
+               
+                 // float data
+                 "10.5" => 10.5,
+                 "-10.5" => -10.5,
+                 "10.1234567e10" => 10.1234567e10,
+                 "10.7654321E-10" => 10.7654321E-10,
+                 ".5" => .5,
+               
+                 // null data
+                 "NULL" => NULL,
+                 "null" =>  null,
+               
+                 // boolean data
+                 "true" => true,
+                 "false" => false,
+                 "TRUE" => TRUE,
+                 "FALSE" => FALSE,
+               
+                 // empty data
+                 "\"\"" => "",
+                 "''" => '',
+               
+                 // object data
+                 "new fooClass()" => new fooClass(),
+                 
+                 // undefined data
+                 "undefined var" => $undefined_var,
+               
+                // unset data
+                "unset var" => $unset_var,
+);
+
+// loop through each element of the array for data
+
+foreach($values as $key => $value) {
+      echo "-- Iterator $key --\n";
+      var_dump( php_uname($value) );
+};
+
+?>
+===DONE===
+--EXPECTF--
+*** Testing php_uname() - usage variations
+-- Iterator 0 --
+unicode(%d) "%s"
+-- Iterator 1 --
+unicode(%d) "%s"
+-- Iterator 12345 --
+unicode(%d) "%s"
+-- Iterator -2345 --
+unicode(%d) "%s"
+-- Iterator 10.5 --
+unicode(%d) "%s"
+-- Iterator -10.5 --
+unicode(%d) "%s"
+-- Iterator 10.1234567e10 --
+unicode(%d) "%s"
+-- Iterator 10.7654321E-10 --
+unicode(%d) "%s"
+-- Iterator .5 --
+unicode(%d) "%s"
+-- Iterator NULL --
+unicode(%d) "%s"
+-- Iterator null --
+unicode(%d) "%s"
+-- Iterator true --
+unicode(%d) "%s"
+-- Iterator false --
+unicode(%d) "%s"
+-- Iterator TRUE --
+unicode(%d) "%s"
+-- Iterator FALSE --
+unicode(%d) "%s"
+-- Iterator "" --
+unicode(%d) "%s"
+-- Iterator '' --
+unicode(%d) "%s"
+-- Iterator new fooClass() --
+unicode(%d) "%s"
+-- Iterator undefined var --
+unicode(%d) "%s"
+-- Iterator unset var --
+unicode(%d) "%s"
+===DONE===
\ No newline at end of file