> On 24/08/16 18:12, Lars Bergstrom wrote:
> > Any opinions or other ideas here?

Yes. We stop relying on the build system entirely, and move to having 
csswg-test instead of css-test-built in repo. As hinted at, there's been 
ongoing work to make it possible to run all the CSS tests with wptserve and 
wpt-tools without the build step, primarily being done by me (hat-tip to Google 
for paying me to do this!).

In principle, it should be possible to run all the tests without running the 
build step first *today*, though the biggest problem is creating a manifest to 
know what files are tests as wpt-tools cannot do this the same as the build 
step currently (https://github.com/w3c/wpt-tools/pull/90 is the work on 
changing that).

But today we create the manifest with wpt-tools, with the build files, and the 
result of doing that against the unbuilt files should be the same (i.e., it's 
equally wrong—but it's strictly no worse than what we do today).

The big gotcha per-se is the fact that for mainly historic reasons large 
numbers of the tests' source files are XHTML, and we currently parse XHTML 
using our XML5 parser, which may or may not work well enough. I also wouldn't 
rule out bugs related to namespace selectors and the like existing. That 
said—others likely know how likely bugs are around here better than me.

My suggestion would be to come up with a list of all reftest_nodes we currently 
run, find the source file in csswg-test (which should in general be "find a 
file with the same base name ignoring the extension), and compare the rendering 
of both. Hopefully analysing the results doesn't take too long because there 
aren't too many ones that differ!

 On Wednesday, August 24, 2016 at 5:37:41 PM UTC+1, Simon Sapin wrote:
> Some files (some of them relatively large, like 
> reference/support/big-buck-bunny-240p.webm) are also duplicated across 
> multiple specs. Again by hacking the build script I think we can have a 
> single "support" directory shared across specs, with a step that checks 
> that files with colliding names have identical content. (If that’s not 
> always the case, we’d have rename some files in the source and update 
> tests that use them.)

FWIW, we can't actually safely do that, because we can't solve the halting 
problem. (A support file may be referenced at that path by code created by JS. 
Therefore to rewrite all references to the support file to a single location, 
we have to detect all such cases in JS, which obviously falls foul of the 
halting problem.)

/gsnedders
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to