]> granicus.if.org Git - php/commitdiff
Try to fix setcookie() tests on 32-bit
authorNikita Popov <nikita.ppv@gmail.com>
Tue, 8 Sep 2020 14:18:45 +0000 (16:18 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Tue, 8 Sep 2020 14:25:21 +0000 (16:25 +0200)
ext/standard/tests/network/setcookie_array_option_error.phpt
ext/standard/tests/network/setcookie_error.phpt
ext/standard/tests/network/setrawcookie_error.phpt

index 545e93e36f178e31873229311a8776f9a28cfdad..7e564db57cb458f6e8a9c583e18dd2f133782321 100644 (file)
@@ -25,13 +25,6 @@ try {
 } catch (\ValueError $e) {
     echo $e->getMessage() . "\n";
 }
-// Invalid expiration date
-// To go above year 9999: 60 * 60 * 24 * 365 * 9999
-try {
-    setcookie('name', 'value', ['expires' => 315328464000]);
-} catch (\ValueError $e) {
-    echo $e->getMessage() . "\n";
-}
 // Invalid path key content
 try {
     setcookie('name', 'value', ['path' => '/;/']);
@@ -52,6 +45,17 @@ try {
     echo $e->getMessage() . "\n";
 }
 
+if (PHP_INT_SIZE == 8) {
+    try {
+        // To go above year 9999: 60 * 60 * 24 * 365 * 9999
+        setrawcookie('name', 'value', ['expires' => 315328464000]);
+    } catch (\ValueError $e) {
+        var_dump($e->getMessage() == 'setcookie(): "expires" option cannot have a year greater than 9999');
+    }
+} else {
+    var_dump(true);
+}
+
 var_dump(headers_list());
 --EXPECTHEADERS--
 
@@ -59,10 +63,10 @@ var_dump(headers_list());
 setcookie(): option "unknown_key" is invalid
 setcookie(): option array cannot have numeric keys
 setcookie(): option "foo" is invalid
-setcookie(): "expires" option cannot have a year greater than 9999
 setcookie(): "path" option cannot contain ",", ";", " ", "\t", "\r", "\n", "\013", or "\014"
 setcookie(): "domain" option cannot contain ",", ";", " ", "\t", "\r", "\n", "\013", or "\014"
 setcookie(): Expects exactly 3 arguments when argument #3 ($expires_or_options) is an array
+bool(false)
 array(1) {
   [0]=>
   string(%s) "X-Powered-By: PHP/%s"
index 12b0f25ceb09e15ef99188bc2b36fb1fea8ca3b0..8c071199f8625e8a06183c4bbb70381a7f862351 100644 (file)
@@ -22,12 +22,6 @@ try {
 } catch (\ValueError $e) {
     echo $e->getMessage() . "\n";
 }
-// To go above year 9999: 60 * 60 * 24 * 365 * 9999
-try {
-    setcookie('name', 'value', 315328464000);
-} catch (\ValueError $e) {
-    echo $e->getMessage() . "\n";
-}
 try {
     setcookie('name', 'value', 100, 'invalid;');
 } catch (\ValueError $e) {
@@ -39,15 +33,28 @@ try {
     echo $e->getMessage() . "\n";
 }
 
+if (PHP_INT_SIZE == 8) {
+    try {
+        // To go above year 9999: 60 * 60 * 24 * 365 * 9999
+        setcookie('name', 'value', 315328464000);
+    } catch (\ValueError $e) {
+        var_dump($e->getMessage() == 'setcookie(): "expires" option cannot have a year greater than 9999');
+    }
+} else {
+    var_dump(true);
+}
+
 var_dump(headers_list());
+
+?>
 --EXPECTHEADERS--
 
 --EXPECTF--
 setcookie(): Argument #1 ($name) cannot be empty
 setcookie(): Argument #1 ($name) cannot contain "=", ",", ";", " ", "\t", "\r", "\n", "\013", or "\014"
-setcookie(): "expires" option cannot have a year greater than 9999
 setcookie(): "path" option cannot contain ",", ";", " ", "\t", "\r", "\n", "\013", or "\014"
 setcookie(): "domain" option cannot contain ",", ";", " ", "\t", "\r", "\n", "\013", or "\014"
+bool(true)
 array(2) {
   [0]=>
   string(%d) "X-Powered-By: PHP/%s"
index 39504308240d31c1f78d7276e324a0b22ca55ac3..dd428a198a5e65101a13b2374f0c596480787126 100644 (file)
@@ -39,7 +39,20 @@ try {
     echo $e->getMessage() . "\n";
 }
 
+if (PHP_INT_SIZE == 8) {
+    try {
+        // To go above year 9999: 60 * 60 * 24 * 365 * 9999
+        setrawcookie('name', 'value', 315328464000);
+    } catch (\ValueError $e) {
+        var_dump($e->getMessage() == 'setrawcookie(): "expires" option cannot have a year greater than 9999');
+    }
+} else {
+    var_dump(true);
+}
+
 var_dump(headers_list());
+
+?>
 --EXPECTHEADERS--
 
 --EXPECTF--
@@ -49,6 +62,7 @@ setrawcookie(): Argument #2 ($value) cannot contain ",", ";", " ", "\t", "\r", "
 setrawcookie(): "expires" option cannot have a year greater than 9999
 setrawcookie(): "path" option cannot contain ",", ";", " ", "\t", "\r", "\n", "\013", or "\014"
 setrawcookie(): "domain" option cannot contain ",", ";", " ", "\t", "\r", "\n", "\013", or "\014"
+bool(true)
 array(1) {
   [0]=>
   string(%d) "X-Powered-By: PHP/%s"