Annotation of embedaddon/php/ext/standard/tests/array/array_diff_key.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test of the array_diff_key() and array_diff_ukey()
                      3: --FILE--
                      4: <?php
                      5: $a = array(1, 6, 2, -20, 15, 1200, -2500);
                      6: $b = array(0, 7, 2, -20, 11, 1100, -2500);
                      7: $c = array(0, 6, 2, -20, 19, 1000, -2500);
                      8: $d = array(3, 8,-2, -20, 14,  900, -2600);
                      9: $a_f = array_flip($a);
                     10: $b_f = array_flip($b);
                     11: $c_f = array_flip($c);
                     12: $d_f = array_flip($d);
                     13: $i = 1;
                     14: /* give nicer values */
                     15: foreach ($a_f as $k=> &$a_f_el) { $a_f_el =$k*2;}
                     16: foreach ($b_f as $k=> &$b_f_el) { $b_f_el =$k*2;}
                     17: foreach ($c_f as $k=> &$c_f_el) { $c_f_el =$k*2;}
                     18: foreach ($d_f as $k=> &$d_f_el) { $d_f_el =$k*2;}
                     19: 
                     20: echo "------ Test $i --------\n";$i++;// 1
                     21: var_dump(array_diff_key($a_f, $b_f));// keys -> 1, 6, 15, 1200
                     22: var_dump(array_diff_ukey($a_f, $b_f, "comp_func"));// 1, 6, 15, 1200
                     23: 
                     24: echo "------ Test $i --------\n";$i++;// 2
                     25: var_dump(array_diff_key($a_f, $c_f));// keys -> 1, 15, 1200
                     26: var_dump(array_diff_ukey($a_f, $c_f, "comp_func"));// 1, 15, 1200
                     27: 
                     28: echo "------ Test $i --------\n";$i++;// 3
                     29: var_dump(array_diff_key($a_f, $d_f));// 1, 6, 2, 15, 1200, -2500
                     30: var_dump(array_diff_ukey($a_f, $d_f, "comp_func"));// 1, 6, 2, 15, 1200, -2500
                     31: 
                     32: echo "------ Test $i --------\n";$i++;// 4
                     33: var_dump(array_diff_key($a_f, $b_f, $c_f));// 1, 15, 1200
                     34: var_dump(array_diff_ukey($a_f, $b_f, $c_f, "comp_func"));// 1, 15, 1200
                     35: 
                     36: echo "------ Test $i --------\n";$i++;// 5
                     37: var_dump(array_diff_key($a_f, $b_f, $d_f));// 1, 6, 15, 1200
                     38: var_dump(array_diff_ukey($a_f, $b_f, $d_f, "comp_func"));// 1, 6, 15, 1200
                     39: 
                     40: 
                     41: echo "------ Test $i --------\n";$i++;// 6
                     42: var_dump(array_diff_key($a_f, $b_f, $c_f, $d_f));// 1, 15, 1200
                     43: var_dump(array_diff_ukey($a_f, $b_f, $c_f, $d_f, "comp_func"));//1, 15, 1200
                     44: 
                     45: 
                     46: echo "------ Test $i --------\n";$i++;// 7
                     47: var_dump(array_diff_key($b_f, $c_f));// 7, 11, 1100
                     48: var_dump(array_diff_ukey($b_f, $c_f, "comp_func"));//7, 11, 1100
                     49: 
                     50: echo "------ Test $i --------\n";$i++;// 8
                     51: var_dump(array_diff_key($b_f, $d_f));//0, 7, 2, 11, 1100, -2500
                     52: var_dump(array_diff_ukey($b_f, $d_f, "comp_func"));//0, 7, 2, 11, 1100, -2500
                     53: 
                     54: 
                     55: echo "------ Test $i --------\n";$i++;// 9
                     56: var_dump(array_diff_key($b_f, $c_f, $d_f));// 7, 11, 1100
                     57: var_dump(array_diff_ukey($b_f, $c_f,  $d_f, "comp_func"));// 7, 11, 1000
                     58: 
                     59: function comp_func($a, $b) {
                     60:         if ($a === $b) return 0;
                     61:         return ($a > $b)? 1:-1;
                     62: 
                     63: }
                     64: ?>
                     65: --EXPECTF--
                     66: ------ Test 1 --------
                     67: array(4) {
                     68:   [1]=>
                     69:   int(2)
                     70:   [6]=>
                     71:   int(12)
                     72:   [15]=>
                     73:   int(30)
                     74:   [1200]=>
                     75:   int(2400)
                     76: }
                     77: array(4) {
                     78:   [1]=>
                     79:   int(2)
                     80:   [6]=>
                     81:   int(12)
                     82:   [15]=>
                     83:   int(30)
                     84:   [1200]=>
                     85:   int(2400)
                     86: }
                     87: ------ Test 2 --------
                     88: array(3) {
                     89:   [1]=>
                     90:   int(2)
                     91:   [15]=>
                     92:   int(30)
                     93:   [1200]=>
                     94:   int(2400)
                     95: }
                     96: array(3) {
                     97:   [1]=>
                     98:   int(2)
                     99:   [15]=>
                    100:   int(30)
                    101:   [1200]=>
                    102:   int(2400)
                    103: }
                    104: ------ Test 3 --------
                    105: array(6) {
                    106:   [1]=>
                    107:   int(2)
                    108:   [6]=>
                    109:   int(12)
                    110:   [2]=>
                    111:   int(4)
                    112:   [15]=>
                    113:   int(30)
                    114:   [1200]=>
                    115:   int(2400)
                    116:   [-2500]=>
                    117:   &int(-5000)
                    118: }
                    119: array(6) {
                    120:   [1]=>
                    121:   int(2)
                    122:   [6]=>
                    123:   int(12)
                    124:   [2]=>
                    125:   int(4)
                    126:   [15]=>
                    127:   int(30)
                    128:   [1200]=>
                    129:   int(2400)
                    130:   [-2500]=>
                    131:   &int(-5000)
                    132: }
                    133: ------ Test 4 --------
                    134: array(3) {
                    135:   [1]=>
                    136:   int(2)
                    137:   [15]=>
                    138:   int(30)
                    139:   [1200]=>
                    140:   int(2400)
                    141: }
                    142: array(3) {
                    143:   [1]=>
                    144:   int(2)
                    145:   [15]=>
                    146:   int(30)
                    147:   [1200]=>
                    148:   int(2400)
                    149: }
                    150: ------ Test 5 --------
                    151: array(4) {
                    152:   [1]=>
                    153:   int(2)
                    154:   [6]=>
                    155:   int(12)
                    156:   [15]=>
                    157:   int(30)
                    158:   [1200]=>
                    159:   int(2400)
                    160: }
                    161: array(4) {
                    162:   [1]=>
                    163:   int(2)
                    164:   [6]=>
                    165:   int(12)
                    166:   [15]=>
                    167:   int(30)
                    168:   [1200]=>
                    169:   int(2400)
                    170: }
                    171: ------ Test 6 --------
                    172: array(3) {
                    173:   [1]=>
                    174:   int(2)
                    175:   [15]=>
                    176:   int(30)
                    177:   [1200]=>
                    178:   int(2400)
                    179: }
                    180: array(3) {
                    181:   [1]=>
                    182:   int(2)
                    183:   [15]=>
                    184:   int(30)
                    185:   [1200]=>
                    186:   int(2400)
                    187: }
                    188: ------ Test 7 --------
                    189: array(3) {
                    190:   [7]=>
                    191:   int(14)
                    192:   [11]=>
                    193:   int(22)
                    194:   [1100]=>
                    195:   int(2200)
                    196: }
                    197: array(3) {
                    198:   [7]=>
                    199:   int(14)
                    200:   [11]=>
                    201:   int(22)
                    202:   [1100]=>
                    203:   int(2200)
                    204: }
                    205: ------ Test 8 --------
                    206: array(6) {
                    207:   [0]=>
                    208:   int(0)
                    209:   [7]=>
                    210:   int(14)
                    211:   [2]=>
                    212:   int(4)
                    213:   [11]=>
                    214:   int(22)
                    215:   [1100]=>
                    216:   int(2200)
                    217:   [-2500]=>
                    218:   &int(-5000)
                    219: }
                    220: array(6) {
                    221:   [0]=>
                    222:   int(0)
                    223:   [7]=>
                    224:   int(14)
                    225:   [2]=>
                    226:   int(4)
                    227:   [11]=>
                    228:   int(22)
                    229:   [1100]=>
                    230:   int(2200)
                    231:   [-2500]=>
                    232:   &int(-5000)
                    233: }
                    234: ------ Test 9 --------
                    235: array(3) {
                    236:   [7]=>
                    237:   int(14)
                    238:   [11]=>
                    239:   int(22)
                    240:   [1100]=>
                    241:   int(2200)
                    242: }
                    243: array(3) {
                    244:   [7]=>
                    245:   int(14)
                    246:   [11]=>
                    247:   int(22)
                    248:   [1100]=>
                    249:   int(2200)
                    250: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>