Bug 147586

Summary: Move tests out of platform directories
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: Tools / TestsAssignee: Simon Fraser (smfr) <simon.fraser>
Status: NEW ---    
Severity: Normal CC: ap, clopez, darin, dbates, simon.fraser
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=14948
Bug Depends on: 147587    
Bug Blocks:    

Description Simon Fraser (smfr) 2015-08-03 13:34:11 PDT
Tracking bug for moving tests out of platform directories.
Comment 1 Darin Adler 2020-10-11 15:07:34 PDT
Looks like there are currently 287 of these tests:

platform % find . -name '*.html' | grep -v expected | wc -l
     285
platform % find . -name '*.svg' | grep -v expected | wc -l
       2

Should be quick to move them once we decide where we want to move them *to*. Seems clear we don’t just want to move tests from platform/mac/* into mac/*. Maybe a platform-named directory inside the lowest directory in the hierarchy for each test?

If we nail down a proposal, I’d be happy to start doing the moving or write a script to do it.
Comment 2 Alexey Proskuryakov 2020-10-11 15:08:20 PDT
I think that most of the time, they could be moved to a subdirectory named after a specific technology that's platform specific, and the directory would then be skipped on other platforms.

E.g. mane "Mac" tests are actually about legacy Objective-C plugins.

But also, many seem like they are not really platform specific in the first place - e.g. platform/mac/fast/text/core-text-fallback-to-unknown-font.html
Comment 3 Darin Adler 2020-10-11 15:10:07 PDT
Concept here is that the "platform" directory would then be for platform-specific *expectations* only. Makes me think that the name "platform" is not great. I would call it PlatformSpecificExpectations or platform-specific-expected-results or something like that.

(Probably my least favorite WebKit project word. Like why is the function that returns a CGContextRef on GraphicsContext named platformContext instead of cgContext?)