[whatwg] URL interop status and reference implementation demos

Anne has kindly given me access to the directory on the server where the 
url.spec lives.  I've started to move some of my work there.

https://url.spec.whatwg.org/interop/urltest-results/

Note that the expected results come from:

https://github.com/w3c/web-platform-tests/blob/master/url/urltestdata.txt

I'd like to suggest that the following test be added:

https://github.com/rubys/url/blob/peg.js/reference-implementation/test/moretestdata.txt

And that the expected results be changed on the following tests:

https://github.com/rubys/url/blob/peg.js/reference-implementation/test/patchtestdata.txt

Note: I appear to have direct update access to urltestdata.txt, but I 
would appreciate a review before I make any updates.

- - -

I also have a reference implementation I've been working on.  First, a 
basic interface:

https://url.spec.whatwg.org/reference-implementation/liveview.html

A second interface allows you to override the base:

https://url.spec.whatwg.org/reference-implementation/liveview2.html

A third interface allows you to see what happens when you call 
individual setters:

https://url.spec.whatwg.org/reference-implementation/liveview3.html

Note: while all versions are a work in progress, this is more true for 
liveview3 than the others.  In particular, this was created today, and 
only has href, protocol, and username roughed in at the moment.

The setters also have unit tests:

https://github.com/rubys/url/blob/peg.js/reference-implementation/test/urlsettest.js

I'm planning to refactor these tests, separating the test data from the 
code so that other libraries and user agents can test against the same 
data.  Once I do, I'll publish interop test results for these setters too.

As a final note, the reference implementation has a list of known 
differences from the published standard:

intertwingly.net/projects/pegurl/url.html

- Sam Ruby

Received on Tuesday, 18 November 2014 23:14:32 UTC