Annotation of embedaddon/php/ext/standard/tests/math/pow.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Various pow() tests
! 3: --FILE--
! 4: <?php // $Id: pow.phpt 242949 2007-09-26 15:44:16Z cvs2svn $
! 5:
! 6: define('LONG_MAX', is_int(5000000000)? 9223372036854775807 : 0x7FFFFFFF);
! 7: define('LONG_MIN', -LONG_MAX - 1);
! 8: printf("%d,%d,%d,%d\n",is_int(LONG_MIN ),is_int(LONG_MAX ),
! 9: is_int(LONG_MIN-1),is_int(LONG_MAX+1));
! 10:
! 11: $tests = <<<TESTS
! 12: 0.25 === pow(-2,-2)
! 13: -0.5 === pow(-2,-1)
! 14: 1 === pow(-2, 0)
! 15: -2 === pow(-2, 1)
! 16: 4 === pow(-2, 2)
! 17: 1.0 === pow(-1,-2)
! 18: -1.0 === pow(-1,-1)
! 19: 1 === pow(-1, 0)
! 20: -1 === pow(-1, 1)
! 21: 1 === pow(-1, 2)
! 22: TRUE === is_infinite(pow(0,-2))
! 23: TRUE === is_infinite(pow(0,-1))
! 24: 1 === pow( 0, 0)
! 25: 0 === pow( 0, 1)
! 26: 0 === pow( 0, 2)
! 27: 1.0 === pow( 1,-2)
! 28: 1.0 === pow( 1,-1)
! 29: 1 === pow( 1, 0)
! 30: 1 === pow( 1, 1)
! 31: 1 === pow( 1, 2)
! 32: 0.25 === pow( 2,-2)
! 33: 0.5 === pow( 2,-1)
! 34: 1 === pow( 2, 0)
! 35: 2 === pow( 2, 1)
! 36: 4 === pow( 2, 2)
! 37: 0.25 === pow(-2,-2.0)
! 38: -0.5 === pow(-2,-1.0)
! 39: 1.0 === pow(-2, 0.0)
! 40: -2.0 === pow(-2, 1.0)
! 41: 4.0 === pow(-2, 2.0)
! 42: 1.0 === pow(-1,-2.0)
! 43: -1.0 === pow(-1,-1.0)
! 44: 1.0 === pow(-1, 0.0)
! 45: -1.0 === pow(-1, 1.0)
! 46: 1.0 === pow(-1, 2.0)
! 47: TRUE === is_infinite(pow(0,-2.0))
! 48: TRUE === is_infinite(pow(0,-1.0))
! 49: 1.0 === pow( 0, 0.0)
! 50: 0.0 === pow( 0, 1.0)
! 51: 0.0 === pow( 0, 2.0)
! 52: 1.0 === pow( 1,-2.0)
! 53: 1.0 === pow( 1,-1.0)
! 54: 1.0 === pow( 1, 0.0)
! 55: 1.0 === pow( 1, 1.0)
! 56: 1.0 === pow( 1, 2.0)
! 57: 0.25 === pow( 2,-2.0)
! 58: 0.5 === pow( 2,-1.0)
! 59: 1.0 === pow( 2, 0.0)
! 60: 2.0 === pow( 2, 1.0)
! 61: 4.0 === pow( 2, 2.0)
! 62: 2147483648 === pow(2,31)
! 63: -2147483648 ~== pow(-2,31)
! 64: 1000000000 === pow(10,9)
! 65: 100000000 === pow(-10,8)
! 66: 1 === pow(-1,1443279822)
! 67: -1 === pow(-1,1443279821)
! 68: sqrt(2) ~== pow(2,1/2)
! 69: 0.25 === pow(-2.0,-2.0)
! 70: -0.5 === pow(-2.0,-1.0)
! 71: 1.0 === pow(-2.0, 0.0)
! 72: -2.0 === pow(-2.0, 1.0)
! 73: 4.0 === pow(-2.0, 2.0)
! 74: 1.0 === pow(-1.0,-2.0)
! 75: -1.0 === pow(-1.0,-1.0)
! 76: 1.0 === pow(-1.0, 0.0)
! 77: -1.0 === pow(-1.0, 1.0)
! 78: 1.0 === pow(-1.0, 2.0)
! 79: TRUE === is_infinite(pow(0.0,-2.0))
! 80: TRUE === is_infinite(pow(0.0,-1.0))
! 81: 1.0 === pow( 0.0, 0.0)
! 82: 0.0 === pow( 0.0, 1.0)
! 83: 0.0 === pow( 0.0, 2.0)
! 84: 1.0 === pow( 1.0,-2.0)
! 85: 1.0 === pow( 1.0,-1.0)
! 86: 1.0 === pow( 1.0, 0.0)
! 87: 1.0 === pow( 1.0, 1.0)
! 88: 1.0 === pow( 1.0, 2.0)
! 89: 0.25 === pow( 2.0,-2.0)
! 90: 0.5 === pow( 2.0,-1.0)
! 91: 1.0 === pow( 2.0, 0.0)
! 92: 2.0 === pow( 2.0, 1.0)
! 93: 4.0 === pow( 2.0, 2.0)
! 94: 0.25 === pow(-2.0,-2)
! 95: -0.5 === pow(-2.0,-1)
! 96: 1.0 === pow(-2.0, 0)
! 97: -2.0 === pow(-2.0, 1)
! 98: 4.0 === pow(-2.0, 2)
! 99: 1.0 === pow(-1.0,-2)
! 100: -1.0 === pow(-1.0,-1)
! 101: 1.0 === pow(-1.0, 0)
! 102: -1.0 === pow(-1.0, 1)
! 103: 1.0 === pow(-1.0, 2)
! 104: TRUE === is_infinite(pow( 0.0,-2))
! 105: TRUE === is_infinite(pow( 0.0,-1))
! 106: 1.0 === pow( 0.0, 0)
! 107: 0.0 === pow( 0.0, 1)
! 108: 0.0 === pow( 0.0, 2)
! 109: 1.0 === pow( 1.0,-2)
! 110: 1.0 === pow( 1.0,-1)
! 111: 1.0 === pow( 1.0, 0)
! 112: 1.0 === pow( 1.0, 1)
! 113: 1.0 === pow( 1.0, 2)
! 114: 0.25 === pow( 2.0,-2)
! 115: 0.5 === pow( 2.0,-1)
! 116: 1.0 === pow( 2.0, 0)
! 117: 2.0 === pow( 2.0, 1)
! 118: 4.0 === pow( 2.0, 2)
! 119: 2.0 === pow( 4, 0.5)
! 120: 2.0 === pow( 4.0, 0.5)
! 121: 3.0 === pow( 27, 1/3)
! 122: 3.0 === pow(27.0, 1/3)
! 123: 0.5 === pow( 4, -0.5)
! 124: 0.5 === pow( 4.0, -0.5)
! 125: LONG_MAX-1 === pow(LONG_MAX-1,1)
! 126: LONG_MIN+1 === pow(LONG_MIN+1,1)
! 127: (LONG_MAX-1)*(LONG_MAX-1) ~== pow(LONG_MAX-1,2)
! 128: (LONG_MIN+1)*(LONG_MIN+1) ~== pow(LONG_MIN+1,2)
! 129: (float)(LONG_MAX-1) === pow(LONG_MAX-1,1.0)
! 130: (float)(LONG_MIN+1) === pow(LONG_MIN+1,1.0)
! 131: (LONG_MAX-1)*(LONG_MAX-1) ~== pow(LONG_MAX-1,2.0)
! 132: (LONG_MIN+1)*(LONG_MIN+1) ~== pow(LONG_MIN+1,2.0)
! 133: LONG_MAX === pow(LONG_MAX,1)
! 134: LONG_MIN === pow(LONG_MIN,1)
! 135: LONG_MAX*LONG_MAX ~== pow(LONG_MAX,2)
! 136: LONG_MIN*LONG_MIN ~== pow(LONG_MIN,2)
! 137: (float)LONG_MAX === pow(LONG_MAX,1.0)
! 138: (float)LONG_MIN === pow(LONG_MIN,1.0)
! 139: LONG_MAX*LONG_MAX ~== pow(LONG_MAX,2.0)
! 140: LONG_MIN*LONG_MIN ~== pow(LONG_MIN,2.0)
! 141: TESTS;
! 142:
! 143: echo "On failure, please mail result to php-dev@lists.php.net\n";
! 144: include(dirname(__FILE__) . '/../../../../tests/quicktester.inc');
! 145:
! 146: --EXPECT--
! 147: 1,1,0,0
! 148: On failure, please mail result to php-dev@lists.php.net
! 149: OK
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>