release 1.7.6
[m6w6/ext-http] / tests / negotiation_001.phpt
1 --TEST--
2 negotiation
3 --SKIPIF--
4 <?php
5 include 'skip.inc';
6 checkmin("5.2.5");
7 ?>
8 --ENV--
9 HTTP_ACCEPT=application/xml, application/xhtml+xml, text/html ; q = .8
10 HTTP_ACCEPT_LANGUAGE=de-AT,de-DE;q=0.8,en-GB;q=0.3,en-US;q=0.2
11 HTTP_ACCEPT_CHARSET=ISO-8859-1,utf-8;q=0.7,*;q=0.7
12 --FILE--
13 <?php
14 echo "-TEST\n";
15 $langs = array(
16 array('de', 'en', 'es'),
17 );
18 $csets = array(
19 array('utf-8', 'iso-8859-1'),
20 );
21 $ctype = array(
22 array('foo/bar', 'application/xhtml+xml', 'text/html')
23 );
24 var_dump(http_negotiate_language($langs[0]));
25 var_dump(http_negotiate_language($langs[0], $lresult));
26 var_dump(http_negotiate_charset($csets[0]));
27 var_dump(http_negotiate_charset($csets[0], $cresult));
28 var_dump(http_negotiate_content_type($ctype[0]));
29 var_dump(http_negotiate_content_type($ctype[0], $tresult));
30 var_dump(http_negotiate_language(array("unknown")));
31 var_dump(http_negotiate_charset(array("unknown")));
32 var_dump(http_negotiate_content_type(array("unknown")));
33 print_r($lresult);
34 print_r($cresult);
35 print_r($tresult);
36 echo "Done\n";
37 ?>
38 --EXPECTF--
39 %aTEST
40 string(2) "de"
41 string(2) "de"
42 string(10) "iso-8859-1"
43 string(10) "iso-8859-1"
44 string(21) "application/xhtml+xml"
45 string(21) "application/xhtml+xml"
46 string(7) "unknown"
47 string(7) "unknown"
48 string(7) "unknown"
49 Array
50 (
51 [de] => 900
52 [en] => 0.27
53 )
54 Array
55 (
56 [iso-8859-1] => 1000
57 [utf-8] => 0.7
58 )
59 Array
60 (
61 [application/xhtml+xml] => 999
62 [text/html] => 0.8
63 )
64 Done