Changeset 84606 in webkit


Ignore:
Timestamp:
Apr 21, 2011 11:46:13 PM (13 years ago)
Author:
commit-queue@webkit.org
Message:

2011-04-21 Chris Weber <chris@lookout.net>

Reviewed by Adam Barth.

Add more test coverage to fast/url
https://bugs.webkit.org/show_bug.cgi?id=59142

The PASS/FAIL results for host, path, and port are set to match
Chromium. The PASS/FAIL results for idna2003 and idna2008 are set to
match those specifications.

  • fast/url/host-expected.txt:
  • fast/url/idna2003-expected.txt: Added.
  • fast/url/idna2003.html: Added.
  • fast/url/idna2008-expected.txt: Added.
  • fast/url/idna2008.html: Added.
  • fast/url/path-expected.txt:
  • fast/url/port-expected.txt:
  • fast/url/script-tests/host.js:
  • fast/url/script-tests/idna2003.js: Added.
  • fast/url/script-tests/idna2008.js: Added.
  • fast/url/script-tests/path.js:
  • fast/url/script-tests/port.js:
Location:
trunk/LayoutTests
Files:
9 added
8 edited
1 copied

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r84604 r84606  
     12011-04-21  Chris Weber  <chris@lookout.net>
     2
     3        Reviewed by Adam Barth.
     4
     5        Add more test coverage to fast/url
     6        https://bugs.webkit.org/show_bug.cgi?id=59142
     7
     8        The PASS/FAIL results for host, path, and port are set to match
     9        Chromium.  The PASS/FAIL results for idna2003 and idna2008 are set to
     10        match those specifications.
     11
     12        * fast/url/host-expected.txt:
     13        * fast/url/idna2003-expected.txt: Added.
     14        * fast/url/idna2003.html: Added.
     15        * fast/url/idna2008-expected.txt: Added.
     16        * fast/url/idna2008.html: Added.
     17        * fast/url/path-expected.txt:
     18        * fast/url/port-expected.txt:
     19        * fast/url/script-tests/host.js:
     20        * fast/url/script-tests/idna2003.js: Added.
     21        * fast/url/script-tests/idna2008.js: Added.
     22        * fast/url/script-tests/path.js:
     23        * fast/url/script-tests/port.js:
     24
    1252011-04-21  Beth Dakin  <bdakin@apple.com>
    226
  • trunk/LayoutTests/fast/url/host-expected.txt

    r78395 r84606  
    2929PASS canonicalize('http://[google.com]/') is 'http://[google.com]/'
    3030FAIL canonicalize('http://т(/') should be http://xn--%28-7ed/. Was http://xn--(-8tb/.
     31PASS canonicalize('http://go\\@ogle.com/') is 'http://go/@ogle.com/'
     32PASS canonicalize('http://go/@ogle.com/') is 'http://go/@ogle.com/'
     33FAIL canonicalize('http://www.lookout.net::==80::==443::/') should be http://www.lookout.net::%3D%3D80::%3D%3D443:/. Was http://www.lookout.net::==80::==443::/.
     34PASS canonicalize('http://www.lookout.net::80::443/') is 'http://www.lookout.net::80::443/'
     35PASS canonicalize('http://\.//') is 'http://.//'
     36FAIL canonicalize('http:////:@//') should be http:////. Was http://:@//.
     37PASS canonicalize('http://\google.com/foo/') is 'http://google.com/foo/'
     38FAIL canonicalize('http://\\google.com/foo/') should be http://google.com/foo/. Was http:/google.com/foo/.
     39PASS canonicalize('http:////asdf@//') is 'http://asdf@//'
     40PASS canonicalize('http:////:81/') is 'http://:81/'
     41FAIL canonicalize('http://:///') should be http://///. Was http:///.
     42PASS canonicalize('http://c:/') is 'http://c/'
     43PASS canonicalize('http://xxxx:/') is 'http://xxxx/'
     44PASS canonicalize('http://.:./') is 'http://.:./'
     45FAIL canonicalize('http://////@google.com//') should be http://google.com//. Was http:////@google.com//.
     46PASS canonicalize('http://@google.com/') is 'http://google.com/'
    3147PASS successfullyParsed is true
    3248
  • trunk/LayoutTests/fast/url/path-expected.txt

    r77799 r84606  
    2929PASS canonicalize('http://example.com/foo%2©zbar') is 'http://example.com/foo%2%C3%82%C2%A9zbar'
    3030FAIL canonicalize('http://example.com/foo%41%7a') should be http://example.com/fooAz. Was http://example.com/foo%41%7a.
    31 FAIL canonicalize('http://example.com/foo       ‘%91') should be http://example.com/foo%09%C2%91%91. Was http://example.com/foo%C2%91%91.
     31PASS canonicalize('http://example.com/foo       ‘%91') is 'http://example.com/foo%C2%91%91'
    3232FAIL canonicalize('http://example.com/foo%00%51') should be http://example.com/foo%00Q. Was http://example.com/foo%00%51.
    3333PASS canonicalize('http://example.com/(%28:%3A%29)') is 'http://example.com/(%28:%3A%29)'
    3434PASS canonicalize('http://example.com/%3A%3a%3C%3c') is 'http://example.com/%3A%3a%3C%3c'
    35 FAIL canonicalize('http://example.com/foo       bar') should be http://example.com/foo%09bar. Was http://example.com/foobar.
     35PASS canonicalize('http://example.com/foo       bar') is 'http://example.com/foobar'
    3636PASS canonicalize('http://example.com\\foo\\bar') is 'http://example.com/foo/bar'
    3737PASS canonicalize('http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd') is 'http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd'
     
    3939PASS canonicalize('http://example.com/你好你好') is 'http://example.com/%E4%BD%A0%E5%A5%BD%E4%BD%A0%E5%A5%BD'
    4040FAIL canonicalize('http://example.com/﷐zyx') should be http://example.com/%EF%BF%BDzyx. Was http://example.com/%EF%B7%90zyx.
     41PASS canonicalize('http://example.com/‥/foo') is 'http://example.com/%E2%80%A5/foo'
     42PASS canonicalize('http://example.com//foo') is 'http://example.com/%EF%BB%BF/foo'
     43PASS canonicalize('http://example.com/‮/foo/‭/bar') is 'http://example.com/%E2%80%AE/foo/%E2%80%AD/bar'
     44FAIL canonicalize('http://example.com/foo/') should be http://example.com%2Ffoo/. Was http://example.com/foo/.
    4145PASS successfullyParsed is true
    4246
  • trunk/LayoutTests/fast/url/port-expected.txt

    r78383 r84606  
    99PASS canonicalize('http://www.example.com:8080/') is 'http://www.example.com:8080/'
    1010PASS canonicalize('http://www.example.com:/') is 'http://www.example.com/'
     11FAIL canonicalize('http://www.example.com:፩/') should be http://www.example.com:%E1%8D%A9/. Was http://www.example.com:፩/.
     12FAIL canonicalize('http://www.example.com:𝟖/') should be http://www.example.com:%F0%9D%9F%96/. Was http://www.example.com:𝟖/.
    1113PASS canonicalize('foobar://www.example.com:80/') is 'foobar://www.example.com:80/'
    1214PASS successfullyParsed is true
  • trunk/LayoutTests/fast/url/script-tests/host.js

    r57711 r84606  
    6060  // Cyrillic letter followed buy ( should return punicode for ( escaped before punicode string was created. I.e.
    6161  // if ( is escaped after punicode is created we would get xn--%28-8tb (incorrect).
    62   ["\u0442(", "xn--%28-7ed"]
     62  ["\u0442(", "xn--%28-7ed"],
     63  ["go\\\\@ogle.com","go/@ogle.com"],
     64  ["go/@ogle.com","go/@ogle.com"],
     65  ["www.lookout.net::==80::==443::","www.lookout.net::%3D%3D80::%3D%3D443:"],
     66  ["www.lookout.net::80::443","www.lookout.net::80::443"],
     67  // From http://eaea.sirdarckcat.net/uritest.html
     68  ["\\./","./"],
     69  ["//:@/","/"],
     70  ["\\google.com/foo","google.com/foo"],
     71  ["\\\\google.com/foo","google.com/foo"],
     72  ["//asdf@/","asdf@/"],
     73  ["//:81",":81"],
     74  ["://","//"],
     75  ["c:","c"],
     76  ["xxxx:","xxxx"],
     77  [".:.",".:."],
     78  ["////@google.com/","google.com/"],
     79  ["@google.com","google.com"]
    6380];
    6481
  • trunk/LayoutTests/fast/url/script-tests/path.js

    r77799 r84606  
    4444  ["/foo%41%7a", "/fooAz"],
    4545  // Funny characters that are unescaped should be escaped
    46   ["/foo\u0009\u0091%91", "/foo%09%C2%91%91"],
     46  ["/foo\u0009\u0091%91", "/foo%C2%91%91"],
    4747  // Invalid characters that are escaped should cause a failure.
    4848  ["/foo%00%51", "/foo%00Q"],
     
    5353  ["/%3A%3a%3C%3c", "/%3A%3a%3C%3c"],
    5454  // Funny characters that are unescaped should be escaped
    55   ["/foo\tbar", "/foo%09bar"],
     55  ["/foo\tbar", "/foobar"],
    5656  // Backslashes should get converted to forward slashes
    5757  ["\\\\foo\\\\bar", "/foo/bar"],
     
    7272  // UTF-16 input, so this doesn't happen on 8-bit.
    7373  ["/\ufdd0zyx", "/%EF%BF%BDzyx"],
     74  // U+2025 TWO DOT LEADER should not be normalized to .. in the path
     75  ["/\u2025/foo", "/%E2%80%A5/foo"],
     76  // A half-surrogate is an error by itself U+DEAD
     77  // FIXME: ["/\uDEAD/foo", "/\uFFFD/foo"],
     78  // BOM code point with special meaning U+FEFF ZERO WIDTH NO-BREAK SPACE
     79  ["/\uFEFF/foo", "/%EF%BB%BF/foo"],
     80  // The BIDI override code points RLO and LRO
     81  ["/\u202E/foo/\u202D/bar", "/%E2%80%AE/foo/%E2%80%AD/bar"],
     82  // U+FF0F FULLWIDTH SOLIDUS should normalize to / in a hostname
     83  ["\uFF0Ffoo/", "%2Ffoo/"],
    7484
    7585];
  • trunk/LayoutTests/fast/url/script-tests/port.js

    r78383 r84606  
    1010  // Empty ports (just a colon) should also be removed
    1111  ["", ""],
     12  // Code point with a numeric value U+1369 ETHIOPIC DIGIT ONE
     13  ["\u1369", ":%E1%8D%A9"],
     14  // Code point with a numerical mapping and value U+1D7D6 MATHEMATICAL BOLD DIGIT EIGHT
     15  ["\uD835\uDFD6", ":%F0%9D%9F%96"],
    1216];
    1317
  • trunk/LayoutTests/platform/chromium/fast/url/path-expected.txt

    r84605 r84606  
    1515PASS canonicalize('http://example.com/foo/../../..') is 'http://example.com/'
    1616PASS canonicalize('http://example.com/foo/../../../ton') is 'http://example.com/ton'
    17 FAIL canonicalize('http://example.com/foo/%2e') should be http://example.com/foo/. Was http://example.com/foo/%2e.
    18 FAIL canonicalize('http://example.com/foo/%2e%2') should be http://example.com/foo/.%2. Was http://example.com/foo/%2e%2.
    19 FAIL canonicalize('http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar') should be http://example.com/..bar. Was http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar.
     17PASS canonicalize('http://example.com/foo/%2e') is 'http://example.com/foo/'
     18PASS canonicalize('http://example.com/foo/%2e%2') is 'http://example.com/foo/.%2'
     19PASS canonicalize('http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar') is 'http://example.com/..bar'
    2020PASS canonicalize('http://example.com////../..') is 'http://example.com//'
    2121PASS canonicalize('http://example.com/foo/bar//../..') is 'http://example.com/foo/'
     
    2828PASS canonicalize('http://example.com/foo%2zbar') is 'http://example.com/foo%2zbar'
    2929PASS canonicalize('http://example.com/foo%2©zbar') is 'http://example.com/foo%2%C3%82%C2%A9zbar'
    30 FAIL canonicalize('http://example.com/foo%41%7a') should be http://example.com/fooAz. Was http://example.com/foo%41%7a.
    31 FAIL canonicalize('http://example.com/foo       ‘%91') should be http://example.com/foo%09%C2%91%91. Was http://example.com/foo%C2%91%91.
    32 FAIL canonicalize('http://example.com/foo%00%51') should be http://example.com/foo%00Q. Was http://example.com/foo%00%51.
     30PASS canonicalize('http://example.com/foo%41%7a') is 'http://example.com/fooAz'
     31PASS canonicalize('http://example.com/foo       ‘%91') is 'http://example.com/foo%C2%91%91'
     32PASS canonicalize('http://example.com/foo%00%51') is 'http://example.com/foo%00Q'
    3333PASS canonicalize('http://example.com/(%28:%3A%29)') is 'http://example.com/(%28:%3A%29)'
    3434PASS canonicalize('http://example.com/%3A%3a%3C%3c') is 'http://example.com/%3A%3a%3C%3c'
    35 FAIL canonicalize('http://example.com/foo       bar') should be http://example.com/foo%09bar. Was http://example.com/foobar.
     35PASS canonicalize('http://example.com/foo       bar') is 'http://example.com/foobar'
    3636PASS canonicalize('http://example.com\\foo\\bar') is 'http://example.com/foo/bar'
    3737PASS canonicalize('http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd') is 'http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd'
    3838PASS canonicalize('http://example.com/@asdf%40') is 'http://example.com/@asdf%40'
    3939PASS canonicalize('http://example.com/你好你好') is 'http://example.com/%E4%BD%A0%E5%A5%BD%E4%BD%A0%E5%A5%BD'
    40 FAIL canonicalize('http://example.com/﷐zyx') should be http://example.com/%EF%BF%BDzyx. Was http://example.com/%EF%B7%90zyx.
     40PASS canonicalize('http://example.com/﷐zyx') is 'http://example.com/%EF%BF%BDzyx'
     41PASS canonicalize('http://example.com/‥/foo') is 'http://example.com/%E2%80%A5/foo'
     42PASS canonicalize('http://example.com//foo') is 'http://example.com/%EF%BB%BF/foo'
     43PASS canonicalize('http://example.com/‮/foo/‭/bar') is 'http://example.com/%E2%80%AE/foo/%E2%80%AD/bar'
     44PASS canonicalize('http://example.com/foo/') is 'http://example.com%2Ffoo/'
    4145PASS successfullyParsed is true
    4246
  • trunk/LayoutTests/platform/chromium/fast/url/port-expected.txt

    r78401 r84606  
    99PASS canonicalize('http://www.example.com:8080/') is 'http://www.example.com:8080/'
    1010PASS canonicalize('http://www.example.com:/') is 'http://www.example.com/'
     11PASS canonicalize('http://www.example.com:፩/') is 'http://www.example.com:%E1%8D%A9/'
     12PASS canonicalize('http://www.example.com:𝟖/') is 'http://www.example.com:%F0%9D%9F%96/'
    1113PASS canonicalize('foobar://www.example.com:80/') is 'foobar://www.example.com:80/'
    1214PASS successfullyParsed is true
Note: See TracChangeset for help on using the changeset viewer.