nicholsr                Thu Jan 24 14:50:18 2008 UTC

  Added files:                 
    /php-src/ext/standard/tests/array   compact_error.phpt 
                                        compact_variation1.phpt 
                                        compact_basic.phpt 
  Log:
  - New tests for compact() 
  # compact_variation1.phpt will fail until bug #29044 is fixed
  

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/compact_error.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/compact_error.phpt
+++ php-src/ext/standard/tests/array/compact_error.phpt
--TEST--
Test compact() function : error conditions 
--FILE--
<?php
/* Prototype  : proto array compact(mixed var_names [, mixed ...])
 * Description: Creates a hash containing variables and their values 
 * Source code: ext/standard/array.c
 * Alias to functions: 
 */

/*
 * Error -tests test compact with zero arguments.
 */

echo "*** Testing compact() : error conditions ***\n";

// Zero arguments
echo "\n-- Testing compact() function with Zero arguments --\n";
var_dump( compact() );


echo "Done";
?>
--EXPECTF--
*** Testing compact() : error conditions ***

-- Testing compact() function with Zero arguments --

Warning: Wrong parameter count for compact() in %s on line %d
NULL
Done

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/compact_variation1.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/compact_variation1.phpt
+++ php-src/ext/standard/tests/array/compact_variation1.phpt
--TEST--
Test compact() function : usage variations  - arrays containing references.
--FILE--
<?php
/* Prototype  : proto array compact(mixed var_names [, mixed ...])
 * Description: Creates a hash containing variables and their values 
 * Source code: ext/standard/array.c
 * Alias to functions: 
 */

/*
 * compact variations - arrays with references
 */

echo "*** Testing compact() : usage variations  - arrays containg references 
***\n";

$a=1;
$b=2;
$c=3;
$string="c";
$arr1=array ("a",&$arr1);
$arr2=array ("a",array(array(array("b"))));
$arr2[1][0][0][]=&$arr2;
$arr2[1][0][0][]=&$arr2[1];
$arr3=array(&$string);

var_dump (compact ($arr1));
var_dump (compact ($arr2));
var_dump (compact ($arr3));
echo "Done";
?>
--EXPECT--
*** Testing compact() : usage variations  - arrays containg references ***
array(1) {
  ["a"]=>
  int(1)
}
array(2) {
  ["a"]=>
  int(1)
  ["b"]=>
  int(2)
}
array(1) {
  ["c"]=>
  int(3)
}
Done
--UEXPECT--
*** Testing compact() : usage variations  - arrays containg references ***
array(1) {
  [u"a"]=>
  int(1)
}
array(2) {
  [u"a"]=>
  int(1)
  [u"b"]=>
  int(2)
}
array(1) {
  [u"c"]=>
  int(3)
}
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/compact_basic.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/compact_basic.phpt
+++ php-src/ext/standard/tests/array/compact_basic.phpt
--TEST--
Test compact() function : basic functionality 
--FILE--
<?php
/* Prototype  : proto array compact(mixed var_names [, mixed ...])
 * Description: Creates a hash containing variables and their values 
 * Source code: ext/standard/array.c
 * Alias to functions: 
 */

/*
 * Test basic functionality
 */

echo "*** Testing compact() : basic functionality ***\n";

$a=1;
$b=0.2;
$c=true;
$d=array("key"=>"val");
$e=NULL;
$f="string";

// simple array test
var_dump (compact(array("a", "b", "c", "d", "e", "f")));
// simple parameter test
var_dump (compact("a", "b", "c", "d", "e", "f"));
var_dump (compact(array("keyval"=>"a", "b"=>"b", "c"=>1)));

// cases which should not yield any output.
var_dump (compact(array(10, 0.3, true, array(20), NULL)));
var_dump (compact(10, 0.3, true, array(20), NULL));
var_dump (compact(array("g")));

echo "Done";
?>
--EXPECT--
*** Testing compact() : basic functionality ***
array(6) {
  ["a"]=>
  int(1)
  ["b"]=>
  float(0.2)
  ["c"]=>
  bool(true)
  ["d"]=>
  array(1) {
    ["key"]=>
    string(3) "val"
  }
  ["e"]=>
  NULL
  ["f"]=>
  string(6) "string"
}
array(6) {
  ["a"]=>
  int(1)
  ["b"]=>
  float(0.2)
  ["c"]=>
  bool(true)
  ["d"]=>
  array(1) {
    ["key"]=>
    string(3) "val"
  }
  ["e"]=>
  NULL
  ["f"]=>
  string(6) "string"
}
array(2) {
  ["a"]=>
  int(1)
  ["b"]=>
  float(0.2)
}
array(0) {
}
array(0) {
}
array(0) {
}
Done
--UEXPECT--
*** Testing compact() : basic functionality ***
array(6) {
  [u"a"]=>
  int(1)
  [u"b"]=>
  float(0.2)
  [u"c"]=>
  bool(true)
  [u"d"]=>
  array(1) {
    [u"key"]=>
    unicode(3) "val"
  }
  [u"e"]=>
  NULL
  [u"f"]=>
  unicode(6) "string"
}
array(6) {
  [u"a"]=>
  int(1)
  [u"b"]=>
  float(0.2)
  [u"c"]=>
  bool(true)
  [u"d"]=>
  array(1) {
    [u"key"]=>
    unicode(3) "val"
  }
  [u"e"]=>
  NULL
  [u"f"]=>
  unicode(6) "string"
}
array(2) {
  [u"a"]=>
  int(1)
  [u"b"]=>
  float(0.2)
}
array(0) {
}
array(0) {
}
array(0) {
}
Done

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to