suppress new PHP-7.4 notice about failed stream_write
[m6w6/ext-http] / tests / negotiate001.phpt
index b71efe03756845cfbf290d67ecd825d710ae7257..ff1644bb0b432eec100bd20e17c06b5a0ac8c800 100644 (file)
@@ -3,7 +3,7 @@ negotiate
 --SKIPIF--
 <?php include "skipif.inc"; ?>
 --ENV--
-HTTP_ACCEPT=text/html,text/plain,text/xml;q=0.1,*/*;q=0
+HTTP_ACCEPT=text/html,text/plain,text/xml;q=0.1,image/*;q=0.1,*/*;q=0
 HTTP_ACCEPT_CHARSET=utf-8,iso-8859-1;q=0.8,iso-8859-15;q=0
 HTTP_ACCEPT_ENCODING=gzip,deflate;q=0
 HTTP_ACCEPT_LANGUAGE=de-DE,de-AT;q=0.9,en;q=0.8,fr;q=0
@@ -11,43 +11,56 @@ HTTP_ACCEPT_LANGUAGE=de-DE,de-AT;q=0.9,en;q=0.8,fr;q=0
 CONTENT TYPE
 
 <?php
+
+function dump($ctr) {
+       print_r(array_map(function($v){return round($v,2);}, $ctr));
+}
+
 $ct = http\Env::negotiateContentType(array("text/html","text/xml","text/json"), $ctr);
-echo "$ct: "; print_r($ctr);
+echo "$ct: "; dump($ctr);
 $ct = http\Env::negotiateContentType(array("text/xml","text/json"), $ctr);
-echo "$ct: "; print_r($ctr);
+echo "$ct: "; dump($ctr);
 $ct = http\Env::negotiateContentType(array("text/json"), $ctr);
-echo "$ct: "; print_r($ctr);
+echo "$ct: "; dump($ctr);
 ?>
 
 CHARSET
 
 <?php
 $cs = http\Env::negotiateCharset(array("utf-8", "iso-8859-1", "iso-8859-15"), $csr);
-echo "$cs: "; print_r($csr);
+echo "$cs: "; dump($csr);
 $cs = http\Env::negotiateCharset(array("iso-8859-1", "iso-8859-15"), $csr);
-echo "$cs: "; print_r($csr);
+echo "$cs: "; dump($csr);
 $cs = http\Env::negotiateCharset(array("utf-16", "iso-8859-15", "iso-8859-2"), $csr);
-echo "$cs: "; print_r($csr);
+echo "$cs: "; dump($csr);
 ?>
 
 ENCODING
 
 <?php
 $ce = http\Env::negotiateEncoding(array("gzip", "deflate", "sdch"), $cer);
-echo "$ce: "; print_r($cer);
+echo "$ce: "; dump($cer);
 $ce = http\Env::negotiateEncoding(array("", "sdch"), $cer);
-echo "$ce: "; print_r($cer);
+echo "$ce: "; dump($cer);
 ?>
 
 LANGUAGE
 
 <?php
 $ln = http\Env::negotiateLanguage(array("de", "en", "fr"), $lnr);
-echo "$ln: "; print_r($lnr);
+echo "$ln: "; dump($lnr);
 $ln = http\Env::negotiateLanguage(array("de-DE", "de-AT", "en"), $lnr);
-echo "$ln: "; print_r($lnr);
+echo "$ln: "; dump($lnr);
 $ln = http\Env::negotiateLanguage(array("nl", "fr", "en"), $lnr);
-echo "$ln: "; print_r($lnr);
+echo "$ln: "; dump($lnr);
+?>
+
+CUSTOM
+
+<?php
+$cc = http\Env::negotiate("a, a.b;q=0.9, c.d;q=0, *.* ; q=0.1",
+    array("a.x", "c.d", "c.e", "a.b"), ".", $ccr);
+echo "$cc: "; dump($ccr);
 ?>
 DONE
 --EXPECT--
@@ -95,7 +108,7 @@ LANGUAGE
 
 de: Array
 (
-    [de] => 0.899
+    [de] => 0.97
     [en] => 0.8
 )
 de-DE: Array
@@ -108,4 +121,13 @@ en: Array
 (
     [en] => 0.8
 )
+
+CUSTOM
+
+a.b: Array
+(
+    [a.b] => 0.9
+    [a.x] => 0.08
+    [c.e] => 0.08
+)
 DONE