1--TEST-- 2Test posix_getpgid() function : variation 3--SKIPIF-- 4<?php 5if((!extension_loaded("posix")) || (!function_exists("posix_getpgid"))) { 6 print "skip - POSIX extension not loaded or posix_getpgid() does not exist"; 7} 8?> 9--FILE-- 10<?php 11/* Prototype : proto int posix_getpgid(void) 12 * Description: Get the process group id of the specified process (This is not a POSIX function, but a SVR4ism, so we compile conditionally) 13 * Source code: ext/posix/posix.c 14 * Alias to functions: 15 */ 16 17echo "*** Testing posix_getpgid() : usage variations ***\n"; 18 19// Initialise function arguments not being substituted (if any) 20 21//get an unset variable 22$unset_var = 10; 23unset ($unset_var); 24 25//array of values to iterate over 26$values = array( 27 28 // float data 29 10.5, 30 -10.5, 31 10.1234567e10, 32 10.7654321E-10, 33 .5, 34 35 // array data 36 array(), 37 array(0), 38 array(1), 39 array(1, 2), 40 array('color' => 'red', 'item' => 'pen'), 41 42 // null data 43 NULL, 44 null, 45 46 // boolean data 47 true, 48 false, 49 TRUE, 50 FALSE, 51 52 // empty data 53 "", 54 '', 55 56 // string data 57 "string", 58 'string', 59 60 // undefined data 61 $undefined_var, 62 63 // unset data 64 $unset_var, 65 66 // object data 67 new stdclass(), 68); 69 70// loop through each element of the array for gid 71 72foreach($values as $value) { 73 echo "\nArg value $value \n"; 74 $result = posix_getpgid($value); 75 if (is_int($result) || $result === false) { 76 echo "valid output\n"; 77 } else { 78 var_dump($result); 79 } 80}; 81 82echo "Done"; 83?> 84--EXPECTF-- 85*** Testing posix_getpgid() : usage variations *** 86 87Notice: Undefined variable: undefined_var in %s on line %d 88 89Notice: Undefined variable: unset_var in %s on line %d 90 91Arg value 10.5 92valid output 93 94Arg value -10.5 95valid output 96 97Arg value 101234567000 98valid output 99 100Arg value 1.07654321E-9 101valid output 102 103Arg value 0.5 104valid output 105 106Arg value Array 107 108Warning: posix_getpgid() expects parameter 1 to be long, array given in %s on line %d 109valid output 110 111Arg value Array 112 113Warning: posix_getpgid() expects parameter 1 to be long, array given in %s on line %d 114valid output 115 116Arg value Array 117 118Warning: posix_getpgid() expects parameter 1 to be long, array given in %s on line %d 119valid output 120 121Arg value Array 122 123Warning: posix_getpgid() expects parameter 1 to be long, array given in %s on line %d 124valid output 125 126Arg value Array 127 128Warning: posix_getpgid() expects parameter 1 to be long, array given in %s on line %d 129valid output 130 131Arg value 132valid output 133 134Arg value 135valid output 136 137Arg value 1 138valid output 139 140Arg value 141valid output 142 143Arg value 1 144valid output 145 146Arg value 147valid output 148 149Arg value 150 151Warning: posix_getpgid() expects parameter 1 to be long, string given in %s on line %d 152valid output 153 154Arg value 155 156Warning: posix_getpgid() expects parameter 1 to be long, string given in %s on line %d 157valid output 158 159Arg value string 160 161Warning: posix_getpgid() expects parameter 1 to be long, string given in %s on line %d 162valid output 163 164Arg value string 165 166Warning: posix_getpgid() expects parameter 1 to be long, string given in %s on line %d 167valid output 168 169Arg value 170valid output 171 172Arg value 173valid output 174 175Catchable fatal error: Object of class stdClass could not be converted to string in %s on line %d 176