products/sources/formale Sprachen/C/Firefox/testing/web-platform/tests/cookies/value/value.html
<!
doctype html >
<
html >
<
head >
<
meta charset=utf-8>
<
title >Test cookie value parsing</
title >
<
meta name=help href=
"https://tools.ietf.org/html/rfc6265#section-5.2 " >
<
meta name=
"timeout" content=
"long" >
<
script src=
"/resources/testharness.js" ></
script >
<
script src=
"/resources/testharnessreport.js" ></
script >
<
script src=
"/resources/testdriver.js" ></
script >
<
script src=
"/resources/testdriver-vendor.js" ></
script >
<
script src=
"/cookies/resources/cookie-test.js" ></
script >
</
head >
<
body >
<
div id=log></
div >
<
script >
// TODO: there is more to test here, these tests capture the old
// ported http-state tests. Feel free to delete this comment when more
// are added, or these are split up into logical groups.
const valueTests = [
{
cookie:
"test=1, baz=qux" ,
expected:
"test=1, baz=qux" ,
name:
"Set value containing a comma" ,
},
{
cookie:
'test="2, baz=qux"' ,
expected:
'test="2, baz=qux"' ,
name:
"Set quoted value containing a comma" ,
},
{
cookie:
'test="3zz;pp" ; ;' ,
expected:
'test="3zz' ,
name:
"Ignore values after semicolon" ,
},
{
cookie:
'test="4zz ;' ,
expected:
'test="4zz' ,
name:
"Ignore whitespace at the end of value" ,
},
{
cookie:
'test="5zzz " "ppp" ;' ,
expected:
'test="5zzz " "ppp"' ,
name:
"Set value including quotes and whitespace up until semicolon" ,
},
{
cookie:
'test=6A"B ;' ,
expected:
'test=6A"B' ,
name:
"Set value with a single quote excluding whitespace"
},
{
cookie:
"test7" ,
expected:
"test7" ,
name:
"Set nameless cookie to its value" ,
},
{
cookie:
'"test8\"HHH"' ,
expected:
'"test8\"HHH"' ,
name:
"Set nameless cookie to its value with an escaped quote" ,
},
{
cookie:
'test="9' ,
expected:
'test="9' ,
name:
"Set value with unbalanced leading quote" ,
},
{
cookie:
"=test10" ,
expected:
"test10" ,
name:
"Set nameless cookie followed by '=' to its value" ,
},
{
// 4 + 2 + 4090 = 4096
cookie: `test=11${
"a" .repeat(4090)}`,
expected: `test=11${
"a" .repeat(4090)}`,
name:
"Set cookie with large name + value ( = 4kb)" ,
},
{
// 4 + 2 + 4091 = 4097
cookie: `test=12${
"a" .repeat(4091)}`,
expected:
"" ,
name:
"Ignore cookie with large name + value ( > 4kb)" ,
},
{
cookie: `test=13\nZYX`,
expected:
"test=13" ,
name:
"Set cookie but ignore value after LF" ,
},
{
cookie:
'test="14 " ;' ,
expected:
'test="14 "' ,
name:
"Set cookie ignoring whitespace after value endquote" ,
},
{
cookie:
"test=15 ;" ,
expected:
"test=15" ,
name:
"Ignore whitespace and ; after value" ,
},
{
cookie:
"test= 16" ,
expected:
"test=16" ,
name:
"Ignore whitespace preceding value" ,
},
{
cookie:
'test="17"' ,
expected:
'test="17"' ,
name:
"Set cookie with quotes in value" ,
},
{
cookie:
'test=" 18 "' ,
expected:
'test=" 18 "' ,
name:
"Set cookie keeping whitespace inside quoted value" ,
},
{
cookie:
'test="19;wow"' ,
expected:
'test="19' ,
name:
"Set cookie value ignoring characters after semicolon" ,
},
{
cookie:
'test="20=20"' ,
expected:
'test="20=20"' ,
name:
"Set cookie with another = inside quoted value" ,
},
{
cookie:
"test = 21 ; ttt" ,
expected:
"test=21" ,
name:
"Set cookie ignoring whitespace surrounding value and characters after first semicolon" ,
},
{
cookie: [
"testA=22" ,
"test22=" ,
"testB=22" ],
expected:
"testA=22; test22=; testB=22" ,
name:
"Set valueless cookie, given `Set-Cookie: test22=`" ,
},
{
cookie:
"test=%32%33" ,
expected:
"test=%32%33" ,
name:
"URL-encoded cookie value is not decoded" ,
},
{
cookie:
"test24==" ,
expected:
"test24==" ,
name:
"Set cookie with value set to =" ,
},
{
cookie:
'test=25=25' ,
expected:
'test=25=25' ,
name:
"Set cookie with one = inside an unquoted value" ,
},
{
cookie:
'test=26=26=26' ,
expected:
'test=26=26=26' ,
name:
"Set cookie with two = inside an unquoted value" ,
},
{
cookie:
'test=27 test' ,
expected:
'test=27 test' ,
name:
"Set cookie with a space character in the value" ,
},
{
cookie:
' test test28 ;' ,
expected:
'test test28' ,
name:
"Set a nameless cookie with a space character in the value" ,
},
];
for (const test of valueTests) {
httpCookieTest(test.cookie, test.expected, test.name, test.defaultPath);
}
</
script >
</
body >
</
html >
Messung V0.5 C=92 H=100 G=95
¤ Dauer der Verarbeitung: 0.0 Sekunden
(vorverarbeitet)
¤
*© Formatika GbR, Deutschland