Annotation of embedaddon/php/ext/standard/tests/math/pow_basiclong_64bit.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test pow function : 64bit long tests
                      3: --SKIPIF--
                      4: <?php
                      5: if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only");
                      6: ?>
                      7: --FILE--
                      8: <?php
                      9:  
                     10: define("MAX_64Bit", 9223372036854775807);
                     11: define("MAX_32Bit", 2147483647);
                     12: define("MIN_64Bit", -9223372036854775807 - 1);
                     13: define("MIN_32Bit", -2147483647 - 1);
                     14: 
                     15: $longVals = array(
                     16:     MAX_64Bit, MIN_64Bit, MAX_32Bit, MIN_32Bit, MAX_64Bit - MAX_32Bit, MIN_64Bit - MIN_32Bit,
                     17:     MAX_32Bit + 1, MIN_32Bit - 1, MAX_32Bit * 2, (MAX_32Bit * 2) + 1, (MAX_32Bit * 2) - 1,
                     18:     MAX_64Bit -1, MAX_64Bit + 1, MIN_64Bit + 1, MIN_64Bit - 1
                     19: );
                     20: 
                     21: $otherVals = array(0, 1, -1, 7, 9, 65, -44, MAX_32Bit, MIN_32Bit, MAX_64Bit, MIN_64Bit);
                     22: 
                     23: 
                     24: foreach ($longVals as $longVal) {
                     25:    foreach($otherVals as $otherVal) {
                     26:           echo "--- testing: $longVal, $otherVal ---\n";   
                     27:       var_dump(pow($longVal, $otherVal));
                     28:    }
                     29: }
                     30:    
                     31: ?>
                     32: ===DONE===
                     33: --EXPECT--
                     34: --- testing: 9223372036854775807, 0 ---
                     35: int(1)
                     36: --- testing: 9223372036854775807, 1 ---
                     37: int(9223372036854775807)
                     38: --- testing: 9223372036854775807, -1 ---
                     39: float(1.0842021724855E-19)
                     40: --- testing: 9223372036854775807, 7 ---
                     41: float(5.6784275335594E+132)
                     42: --- testing: 9223372036854775807, 9 ---
                     43: float(4.8306719037716E+170)
                     44: --- testing: 9223372036854775807, 65 ---
                     45: float(INF)
                     46: --- testing: 9223372036854775807, -44 ---
                     47: float(0)
                     48: --- testing: 9223372036854775807, 2147483647 ---
                     49: float(INF)
                     50: --- testing: 9223372036854775807, -2147483648 ---
                     51: float(0)
                     52: --- testing: 9223372036854775807, 9223372036854775807 ---
                     53: float(INF)
                     54: --- testing: 9223372036854775807, -9223372036854775808 ---
                     55: float(0)
                     56: --- testing: -9223372036854775808, 0 ---
                     57: int(1)
                     58: --- testing: -9223372036854775808, 1 ---
                     59: int(-9223372036854775808)
                     60: --- testing: -9223372036854775808, -1 ---
                     61: float(-1.0842021724855E-19)
                     62: --- testing: -9223372036854775808, 7 ---
                     63: float(-5.6784275335594E+132)
                     64: --- testing: -9223372036854775808, 9 ---
                     65: float(-4.8306719037716E+170)
                     66: --- testing: -9223372036854775808, 65 ---
                     67: float(-INF)
                     68: --- testing: -9223372036854775808, -44 ---
                     69: float(0)
                     70: --- testing: -9223372036854775808, 2147483647 ---
                     71: float(-INF)
                     72: --- testing: -9223372036854775808, -2147483648 ---
                     73: float(0)
                     74: --- testing: -9223372036854775808, 9223372036854775807 ---
                     75: float(-INF)
                     76: --- testing: -9223372036854775808, -9223372036854775808 ---
                     77: float(0)
                     78: --- testing: 2147483647, 0 ---
                     79: int(1)
                     80: --- testing: 2147483647, 1 ---
                     81: int(2147483647)
                     82: --- testing: 2147483647, -1 ---
                     83: float(4.6566128752458E-10)
                     84: --- testing: 2147483647, 7 ---
                     85: float(2.1062458265056E+65)
                     86: --- testing: 2147483647, 9 ---
                     87: float(9.7133444204205E+83)
                     88: --- testing: 2147483647, 65 ---
                     89: float(INF)
                     90: --- testing: 2147483647, -44 ---
                     91: float(0)
                     92: --- testing: 2147483647, 2147483647 ---
                     93: float(INF)
                     94: --- testing: 2147483647, -2147483648 ---
                     95: float(0)
                     96: --- testing: 2147483647, 9223372036854775807 ---
                     97: float(INF)
                     98: --- testing: 2147483647, -9223372036854775808 ---
                     99: float(0)
                    100: --- testing: -2147483648, 0 ---
                    101: int(1)
                    102: --- testing: -2147483648, 1 ---
                    103: int(-2147483648)
                    104: --- testing: -2147483648, -1 ---
                    105: float(-4.6566128730774E-10)
                    106: --- testing: -2147483648, 7 ---
                    107: float(-2.1062458333711E+65)
                    108: --- testing: -2147483648, 9 ---
                    109: float(-9.7133444611286E+83)
                    110: --- testing: -2147483648, 65 ---
                    111: float(-INF)
                    112: --- testing: -2147483648, -44 ---
                    113: float(0)
                    114: --- testing: -2147483648, 2147483647 ---
                    115: float(-INF)
                    116: --- testing: -2147483648, -2147483648 ---
                    117: float(0)
                    118: --- testing: -2147483648, 9223372036854775807 ---
                    119: float(-INF)
                    120: --- testing: -2147483648, -9223372036854775808 ---
                    121: float(0)
                    122: --- testing: 9223372034707292160, 0 ---
                    123: int(1)
                    124: --- testing: 9223372034707292160, 1 ---
                    125: int(9223372034707292160)
                    126: --- testing: 9223372034707292160, -1 ---
                    127: float(1.0842021727379E-19)
                    128: --- testing: 9223372034707292160, 7 ---
                    129: float(5.6784275243046E+132)
                    130: --- testing: 9223372034707292160, 9 ---
                    131: float(4.830671893649E+170)
                    132: --- testing: 9223372034707292160, 65 ---
                    133: float(INF)
                    134: --- testing: 9223372034707292160, -44 ---
                    135: float(0)
                    136: --- testing: 9223372034707292160, 2147483647 ---
                    137: float(INF)
                    138: --- testing: 9223372034707292160, -2147483648 ---
                    139: float(0)
                    140: --- testing: 9223372034707292160, 9223372036854775807 ---
                    141: float(INF)
                    142: --- testing: 9223372034707292160, -9223372036854775808 ---
                    143: float(0)
                    144: --- testing: -9223372034707292160, 0 ---
                    145: int(1)
                    146: --- testing: -9223372034707292160, 1 ---
                    147: int(-9223372034707292160)
                    148: --- testing: -9223372034707292160, -1 ---
                    149: float(-1.0842021727379E-19)
                    150: --- testing: -9223372034707292160, 7 ---
                    151: float(-5.6784275243046E+132)
                    152: --- testing: -9223372034707292160, 9 ---
                    153: float(-4.830671893649E+170)
                    154: --- testing: -9223372034707292160, 65 ---
                    155: float(-INF)
                    156: --- testing: -9223372034707292160, -44 ---
                    157: float(0)
                    158: --- testing: -9223372034707292160, 2147483647 ---
                    159: float(-INF)
                    160: --- testing: -9223372034707292160, -2147483648 ---
                    161: float(0)
                    162: --- testing: -9223372034707292160, 9223372036854775807 ---
                    163: float(-INF)
                    164: --- testing: -9223372034707292160, -9223372036854775808 ---
                    165: float(0)
                    166: --- testing: 2147483648, 0 ---
                    167: int(1)
                    168: --- testing: 2147483648, 1 ---
                    169: int(2147483648)
                    170: --- testing: 2147483648, -1 ---
                    171: float(4.6566128730774E-10)
                    172: --- testing: 2147483648, 7 ---
                    173: float(2.1062458333711E+65)
                    174: --- testing: 2147483648, 9 ---
                    175: float(9.7133444611286E+83)
                    176: --- testing: 2147483648, 65 ---
                    177: float(INF)
                    178: --- testing: 2147483648, -44 ---
                    179: float(0)
                    180: --- testing: 2147483648, 2147483647 ---
                    181: float(INF)
                    182: --- testing: 2147483648, -2147483648 ---
                    183: float(0)
                    184: --- testing: 2147483648, 9223372036854775807 ---
                    185: float(INF)
                    186: --- testing: 2147483648, -9223372036854775808 ---
                    187: float(0)
                    188: --- testing: -2147483649, 0 ---
                    189: int(1)
                    190: --- testing: -2147483649, 1 ---
                    191: int(-2147483649)
                    192: --- testing: -2147483649, -1 ---
                    193: float(-4.656612870909E-10)
                    194: --- testing: -2147483649, 7 ---
                    195: float(-2.1062458402367E+65)
                    196: --- testing: -2147483649, 9 ---
                    197: float(-9.7133445018368E+83)
                    198: --- testing: -2147483649, 65 ---
                    199: float(-INF)
                    200: --- testing: -2147483649, -44 ---
                    201: float(0)
                    202: --- testing: -2147483649, 2147483647 ---
                    203: float(-INF)
                    204: --- testing: -2147483649, -2147483648 ---
                    205: float(0)
                    206: --- testing: -2147483649, 9223372036854775807 ---
                    207: float(-INF)
                    208: --- testing: -2147483649, -9223372036854775808 ---
                    209: float(0)
                    210: --- testing: 4294967294, 0 ---
                    211: int(1)
                    212: --- testing: 4294967294, 1 ---
                    213: int(4294967294)
                    214: --- testing: 4294967294, -1 ---
                    215: float(2.3283064376229E-10)
                    216: --- testing: 4294967294, 7 ---
                    217: float(2.6959946579271E+67)
                    218: --- testing: 4294967294, 9 ---
                    219: float(4.9732323432553E+86)
                    220: --- testing: 4294967294, 65 ---
                    221: float(INF)
                    222: --- testing: 4294967294, -44 ---
                    223: float(0)
                    224: --- testing: 4294967294, 2147483647 ---
                    225: float(INF)
                    226: --- testing: 4294967294, -2147483648 ---
                    227: float(0)
                    228: --- testing: 4294967294, 9223372036854775807 ---
                    229: float(INF)
                    230: --- testing: 4294967294, -9223372036854775808 ---
                    231: float(0)
                    232: --- testing: 4294967295, 0 ---
                    233: int(1)
                    234: --- testing: 4294967295, 1 ---
                    235: int(4294967295)
                    236: --- testing: 4294967295, -1 ---
                    237: float(2.3283064370808E-10)
                    238: --- testing: 4294967295, 7 ---
                    239: float(2.6959946623211E+67)
                    240: --- testing: 4294967295, 9 ---
                    241: float(4.9732323536766E+86)
                    242: --- testing: 4294967295, 65 ---
                    243: float(INF)
                    244: --- testing: 4294967295, -44 ---
                    245: float(0)
                    246: --- testing: 4294967295, 2147483647 ---
                    247: float(INF)
                    248: --- testing: 4294967295, -2147483648 ---
                    249: float(0)
                    250: --- testing: 4294967295, 9223372036854775807 ---
                    251: float(INF)
                    252: --- testing: 4294967295, -9223372036854775808 ---
                    253: float(0)
                    254: --- testing: 4294967293, 0 ---
                    255: int(1)
                    256: --- testing: 4294967293, 1 ---
                    257: int(4294967293)
                    258: --- testing: 4294967293, -1 ---
                    259: float(2.328306438165E-10)
                    260: --- testing: 4294967293, 7 ---
                    261: float(2.6959946535332E+67)
                    262: --- testing: 4294967293, 9 ---
                    263: float(4.973232332834E+86)
                    264: --- testing: 4294967293, 65 ---
                    265: float(INF)
                    266: --- testing: 4294967293, -44 ---
                    267: float(0)
                    268: --- testing: 4294967293, 2147483647 ---
                    269: float(INF)
                    270: --- testing: 4294967293, -2147483648 ---
                    271: float(0)
                    272: --- testing: 4294967293, 9223372036854775807 ---
                    273: float(INF)
                    274: --- testing: 4294967293, -9223372036854775808 ---
                    275: float(0)
                    276: --- testing: 9223372036854775806, 0 ---
                    277: int(1)
                    278: --- testing: 9223372036854775806, 1 ---
                    279: int(9223372036854775806)
                    280: --- testing: 9223372036854775806, -1 ---
                    281: float(1.0842021724855E-19)
                    282: --- testing: 9223372036854775806, 7 ---
                    283: float(5.6784275335594E+132)
                    284: --- testing: 9223372036854775806, 9 ---
                    285: float(4.8306719037716E+170)
                    286: --- testing: 9223372036854775806, 65 ---
                    287: float(INF)
                    288: --- testing: 9223372036854775806, -44 ---
                    289: float(0)
                    290: --- testing: 9223372036854775806, 2147483647 ---
                    291: float(INF)
                    292: --- testing: 9223372036854775806, -2147483648 ---
                    293: float(0)
                    294: --- testing: 9223372036854775806, 9223372036854775807 ---
                    295: float(INF)
                    296: --- testing: 9223372036854775806, -9223372036854775808 ---
                    297: float(0)
                    298: --- testing: 9.2233720368548E+18, 0 ---
                    299: float(1)
                    300: --- testing: 9.2233720368548E+18, 1 ---
                    301: float(9.2233720368548E+18)
                    302: --- testing: 9.2233720368548E+18, -1 ---
                    303: float(1.0842021724855E-19)
                    304: --- testing: 9.2233720368548E+18, 7 ---
                    305: float(5.6784275335594E+132)
                    306: --- testing: 9.2233720368548E+18, 9 ---
                    307: float(4.8306719037716E+170)
                    308: --- testing: 9.2233720368548E+18, 65 ---
                    309: float(INF)
                    310: --- testing: 9.2233720368548E+18, -44 ---
                    311: float(0)
                    312: --- testing: 9.2233720368548E+18, 2147483647 ---
                    313: float(INF)
                    314: --- testing: 9.2233720368548E+18, -2147483648 ---
                    315: float(0)
                    316: --- testing: 9.2233720368548E+18, 9223372036854775807 ---
                    317: float(INF)
                    318: --- testing: 9.2233720368548E+18, -9223372036854775808 ---
                    319: float(0)
                    320: --- testing: -9223372036854775807, 0 ---
                    321: int(1)
                    322: --- testing: -9223372036854775807, 1 ---
                    323: int(-9223372036854775807)
                    324: --- testing: -9223372036854775807, -1 ---
                    325: float(-1.0842021724855E-19)
                    326: --- testing: -9223372036854775807, 7 ---
                    327: float(-5.6784275335594E+132)
                    328: --- testing: -9223372036854775807, 9 ---
                    329: float(-4.8306719037716E+170)
                    330: --- testing: -9223372036854775807, 65 ---
                    331: float(-INF)
                    332: --- testing: -9223372036854775807, -44 ---
                    333: float(0)
                    334: --- testing: -9223372036854775807, 2147483647 ---
                    335: float(-INF)
                    336: --- testing: -9223372036854775807, -2147483648 ---
                    337: float(0)
                    338: --- testing: -9223372036854775807, 9223372036854775807 ---
                    339: float(-INF)
                    340: --- testing: -9223372036854775807, -9223372036854775808 ---
                    341: float(0)
                    342: --- testing: -9.2233720368548E+18, 0 ---
                    343: float(1)
                    344: --- testing: -9.2233720368548E+18, 1 ---
                    345: float(-9.2233720368548E+18)
                    346: --- testing: -9.2233720368548E+18, -1 ---
                    347: float(-1.0842021724855E-19)
                    348: --- testing: -9.2233720368548E+18, 7 ---
                    349: float(-5.6784275335594E+132)
                    350: --- testing: -9.2233720368548E+18, 9 ---
                    351: float(-4.8306719037716E+170)
                    352: --- testing: -9.2233720368548E+18, 65 ---
                    353: float(-INF)
                    354: --- testing: -9.2233720368548E+18, -44 ---
                    355: float(0)
                    356: --- testing: -9.2233720368548E+18, 2147483647 ---
                    357: float(-INF)
                    358: --- testing: -9.2233720368548E+18, -2147483648 ---
                    359: float(0)
                    360: --- testing: -9.2233720368548E+18, 9223372036854775807 ---
                    361: float(INF)
                    362: --- testing: -9.2233720368548E+18, -9223372036854775808 ---
                    363: float(0)
                    364: ===DONE===

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