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