+1. This was really unpleasantly surprising. When I first saw the original blink-dev email, I thought "generic baselines" meant something like "non-web platform test baselines", not "WPT expectation files that are platform-agnostic".
In addition to the context-switching cost, it's just much harder to navigate between tests and their expectations, which is something I do quite often. E.g., they are no longer grouped together in code reviews, since their file paths are lexicographically far away from each other. And, as someone maintaining and reviewing several WPT directories, moving these crucial files out of the directories I commonly work in (and have metadata marking me as the point-of-contact for) into separate directories dilutes the cohesiveness of my projects. On Fri, May 27, 2022 at 12:03 PM Dominic Farolino <d...@chromium.org> wrote: > I write a lot of web platform tests as a Web Platform engineer; recently I > wrote one in external/wpt/ > <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/external/wpt/> > (the external web platform tests directory), and was shocked to find the > eradication of `-expected.txt` files. I placed my expectations file next to > the source file as we've done for many years, and found that my test was > "failing" because the test runner couldn't find my test expectations file. > > I dug deeper and found https://crrev.com/c/3603221 which was responsible > for moving more than 21,000 *platform-agnostic* test expectations files > away from their source files and into web_tests/platform/generic > <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/platform/generic/> > directory. I found more discussion in this email thread > <https://groups.google.com/a/chromium.org/g/blink-dev/c/0WmmgEkqdOo> which > I missed because blink-dev emails do not go directly in my inbox. > > I must say I find this change extraordinarily inconvenient as a Web > Platform engineer, and I want to push back against this. A minority of web > platform tests have platform-specific failures, which justifies the need > for *some* platform-specific test expectations directories, but I believe > a huge majority have generic baselines that are wildly convenient to have > right next to the actual tests themselves. Putting them in a separate > directory means I and others have to open a separate browser tab to view > how many expectations there are for a given directory, and requires a lot > of unnecessary context switching. It is particularly confusing for clusters > of tests whose names are all *very* similar and vary by only a few > numbers or suffixes—this increases the cost of the context switching. > > Furthermore, it renders tons of directories absolutely useless! All ~150 > directories in web_tests/virtual > <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/virtual/> > (for > VirtualTestSuites) are just empty directories with README files—these used > to house virtualtest-specific expectations. So now for fenced frames (the > project I'm working on right now), we have the following test directories: > > - web_tests/wpt_internal/fenced_frame/ > > <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/wpt_internal/fenced_frame/> > - web_tests/virtual/fenced-frame-mparch/ > > <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/virtual/fenced-frame-mparch/> > - web_tests/virtual/fenced-frame-shadow-dom/ > > <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/virtual/fenced-frame-shadow-dom/> > - web_tests/platform/generic/wpt_internal/fenced_frame/ > > <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/platform/generic/wpt_internal/fenced_frame/> > - web_tests/platform/generic/virtual/fenced-frame-mparch/ > > <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/platform/generic/virtual/fenced-frame-mparch/> > - web_tests/platform/generic/virtual/fenced-frame-shadow-dom/ > > <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/platform/generic/virtual/fenced-frame-shadow-dom/> > - + platform-specific directories, which are relatively rare for us > > This is so weird! Regardless of whether or not there are plans to clean > this up, I can't see the upsides. The ousting of platform-agnostic > expectations is only an inconvenience for WP engineers, while there > might be some test-infra conveniences around BUILD.gn dependencies > <https://bugs.chromium.org/p/chromium/issues/detail?id=1299834#:~:text=This%20way%20all%20the%20baselines%20will%20be%20in%20platform%20directory%2C%20make%20it%20a%20little%20bit%20easier%20to%20specify%20dependency%20in%20BUILD.gn.> > (maybe?). > In any case, I am hard pressed to find justification in this move, and > would love to see if we can reconsider this. > > Thoughts? > > Dom > > -- > You received this message because you are subscribed to the Google Groups > "blink-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to blink-dev+unsubscr...@chromium.org. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAP-uykAN06y5o-WYznnicvm1YREbSsLbs6dM57LtL4vCWB%3Duzw%40mail.gmail.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAP-uykAN06y5o-WYznnicvm1YREbSsLbs6dM57LtL4vCWB%3Duzw%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra9jXeotZVYNKBMmW90x36%2BdOCqcqfZ-ZpPW0qJVUBptbQ%40mail.gmail.com.