Re: CSS test repo refactored - branch ready for review



On 6/2/14, 5:49 PM, "Gérard Talbot" <css21testsuite@gtalbot.org> wrote:

>Le 2014-06-02 16:58, Rebecca Hauck a écrit :
>> [Š]
>> 
>>>> 
>>>> 2-
>>>> Many things do not seem right... or at least they're odd.
>>>> 
>>>> a) This folder
>>>> 
>>>> http://test.csswg.org/source/css21/reference/

>>>> 
>>>> now contains various reference files *and* very frequently used and
>>>> reused reference files (with their filename starting with "ref-" eg
>>>> ref-filled-black-96px-square.xht). I do not believe this is best or
>>>> even
>>>> intended.
>>> 
>>> Rebecca handled all the actual refactoring, but I agree, the common
>>> reference files should probably be moved into a 'reference' directory
>>> in
>>> the root of the repository. Note that all the reference links to those
>>> files will have to be updated as well.
>> 
>> To keep things simple for this initial refactoring,
>
>Rebecca,
>
>Okay... so I should be assuming that refactoring is not complete right
>now...

The goal of the refactoring was to have the test repo mirror the spec repo
and to align with the way the web-platform-tests repo is organized — that
is, to have a directory for each spec at the root of the repo. That part
is done. The initial proposal [1] did not include a refined subdirectory
reorganization as that was not necessary to achieve the intended goal.
Also consider that there were tests from many contributors that tested the
same spec or area (microsoft, mozilla, hixie, you, and more...)  It’s much
better now that they’re at least grouped together rather than being
distributed across multiple directories.


>
>> I moved everything
>> from */submitted into the spec directory according the the top spec
>> link
>> in the tests
>
>About ~=260 of my tests ... which were in contributors/gtalbot/submitted
>are now at the root of
>http://test.csswg.org/source/css21/

>and, in my humble opinion, they should not be. These ~=260 tests should
>be moved into spec directory according the the top spec link in the
>tests.

This was agreed upon in the initial refactoring proposal where we
discussed symlinks for a bit, but stayed with this approach at fantasai’s
request [2]. Do you have a recommendation?


>
>> and if there were /reference subfolders where the tests
>> lived, I moved the contents to spec-folder/reference.
>
>Several reference files for those ~=260 tests are now in
>http://test.csswg.org/source/css21/reference/


I’m not sure what you’re saying here - are there broken links to ref files
in your tests? I wrote a helper script to make sure I didn’t break links
and the only ref file links that are currently broken were actually broken
before the refactor, too. It’s a short list Shepherd has them flagged as
well.


>
>> As you point out in
>> other areas, things could be audited and organized a bit more to remove
>> unnecessary and duplicate files and I¹m working on some scripts to help
>> with that.  Keep in mind that all of these files were already in the
>> repo
>> in various places so the issues you¹re pointing out already existed,
>> just
>> from different locations.
>> 
>> 
>>> 
>>>> 
>>>> 
>>>> b) About 260 tests that I submitted have been moved to an odd folder,
>>>> to the root folder
>>>> Eg.#1
>>>> absolute-non-replaced-width-025
>>>> should be in folder
>>>> http://test.csswg.org/source/css21/visudet/

>>>> but it isn't. According to shepherd, such test (and =~ 259 other
>>>> tests)
>>>> is in the root folder:
>>>> http://test.csswg.org/source/css21/

>>> 
>>> I don't think that rearranging the subdirectories within the
>>> specification directories was part of this refactoring. If we're going
>>> to
>>> be consistent with the WPT repo then we may have to rethink that
>>> anyway
>>> (though I don't think having a directory structure tied to spec
>>> subsections is a good idea for specs under active development, as the
>>> structure of the specs tends to change a lot and it's too much to
>>> rearrange the test repo every time that happens).
>> 
>> Right. For the first pass, I didn¹t go as far to organize
>> subdirectories.
>> Those that were there, I left intact and the tests that lived elsewhere
>> in
>> those categories just got moved to the root. Again, the tests that
>> probably belong in those subdirectories weren¹t in them before the
>> refactor and now they¹re just a little closer to where they ought to
>> be.
>
>I'm trying to understand all this ...

Just as an example (somewhat hypothetical, as I’m going from memory a
couple of weeks ago), we had:

/contributors/microsoft/submitted/XXX
/contributors/opera/submitted/XXX

/contributors/hixie/submitted/XXX

/contributors/mozilla/submitted/XXX

/contributors/gtalbot/submitted/XXX


Where XXX are tests for css21 (backgrounds). The existing css21
subdirectory structure was already there. Those subdirectories  were not
created as part of this refactoring, nor were any new ones created as part
of it. Unless a contributor specifically had a ‘backgrounds’ subdirectory
for their css21 tests, the files were moved to the root of the spec
directory for the top link the test.  What we have now is that the XXX
tests that were previously in 5 places are all in css21/, which is closer
to how things should be and achieved the original goal.


>
>> 
>> 
>>> At this point feel free to move your tests about if you don't think
>>> they're in the right place, just be sure to either update the paths to
>>> reference and support files or move them as well, as needed.
>> 
>> Yes, I agree. If you want to organize these a bit more, feel free.
>> Please
>> do so directly in Mercurial
>
>Okay. So, I should manually move those ~=260 tests into their
>appropriate spec folder thanks to Mercurial, right? Along with their
>associated reference files in
>http://test.csswg.org/source/css21/reference/

>this could be a huge job.

If you’d prefer the tests you had previously your submitted folder were
moved into appropriate subfolders under css21/, I can do it. I guess I
don’t really understand why tests that were previously in
/contributors/gtalbot/submitted that should have been in css21/backgrounds
(for example) made any more sense before the refactor. Either way they
were/are not in the subdirectory, but at least now, all of the css21/ spec
are together. I don’t disagree that this large directory could be
organized further, but again, that was not part of the original goal.
Things are much less scattered now, especially if you consider all of the
other contributors with css21 tests in their respective submitted folders.

>
>
>> and not through a github PR. We¹ve learned
>> that the latter will not preserve the history when merged from the
>> github
>> mirror to the the canonical HG repo.
>> 
>>> 
>>>> 
>>>> Eg.#2
>>>> I have 29 background-position-* tests in
>>>> http://test.csswg.org/source/css21/

>>>> which obviously should be instead in
>>>> http://test.csswg.org/source/css21/backgrounds/

>> 
>> Feel free to move them there - I believe they previously existed in
>> your
>> submitted folder.
>
>Yes, they were previously in my submitted folder.
>
>(...)
>
>> Please do let me know about other
>> weird things you notice and certainly feel free to fix them as you see
>> fit.
>
>Well, I'd like to get your okay on the modifications proposal (detailed
>in my other email) on the run-in tests which are scattered in the spec
>folders of
>http://test.csswg.org/source/css21/


Absolutely. Please feel free to reorganize this further.


[1] 
http://lists.w3.org/Archives/Public/public-css-testsuite/2014Apr/0008.html

[2] 
http://lists.w3.org/Archives/Public/public-css-testsuite/2014Apr/0029.html

Received on Tuesday, 3 June 2014 02:47:14 UTC