New issue
Advanced search Search tips

Issue 711292 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug



Sign in to add a comment

Split out platform-specific APIs from webexposed tests

Project Member Reported by rbyers@chromium.org, Apr 13 2017

Issue description

The 'webexposed' tests enumerate the set of APIs we're shipping.  When we have platform-specific APIs we end up adding platform-specific expectation files which are then a real pain to manage and update.  See discussion here for detail: https://groups.google.com/a/chromium.org/forum/#!topic/blink-api-owners-discuss/dTpCcPjQwds

I think we could largely fix this problem pretty easily by:
 - maintaining a list of platform-specific APIs somewhere
 - having two variants of the webexposed tests - one that excludes any string from the platform-specific list, and one that includes only those strings

That way the only time we'd end up with files in WebKit/LayoutTests/platform/*[/virtual/stable]/webexposed/ is for the platform-specific cases, which should be pretty small and easy to manage.

This just came up again here: https://codereview.chromium.org/2814553002/


 

Comment 1 by rbyers@chromium.org, Apr 13 2017

Labels: -Pri-3 Pri-2
Owner: lunalu@chromium.org
Status: Assigned (was: Available)
I think what I've proposed is pretty easy to do and since this continues to cause pain for people I think we should try to make it a priority.  Luna, can you take a look at some point (assuming juncai@ never got around to it)?

Comment 2 by rbyers@chromium.org, Apr 13 2017

Labels: -Pri-2 Pri-1
Labels: M-60

Comment 4 by lunalu@chromium.org, Jun 12 2017

Owner: loonyb...@chromium.org

Comment 5 by rbyers@chromium.org, Jun 21 2017

Labels: -M-60 M-61
Owner: ----
Status: Available (was: Assigned)
Cc: -lunalu@chromium.org loonyb...@chromium.org
Owner: paulmeyer@chromium.org
Status: Assigned (was: Available)
Components: -Blink>Infra>Predictability Internals>FeatureControl
Labels: -Pri-1 -M-61 M-63 Pri-2
Status: Started (was: Assigned)
Project Member

Comment 9 by bugdroid1@chromium.org, Oct 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/87dac2a028dbedbb998a98d4af694d32e6b97c01

commit 87dac2a028dbedbb998a98d4af694d32e6b97c01
Author: Paul Meyer <paulmeyer@chromium.org>
Date: Sun Oct 22 15:54:01 2017

Split out platform-specific webexposed tests.

This patch will split all platform-specific interfaces out of existing
global-interface-listing layout tests into a separate 
global-interface-listing-platform-specific test, using a
platform-specific interface whitelist. This will remove the need to
update expectation files for each platform separately when adding a new
web interface to all platforms (which is usually the case).

Bug:  711292 
Change-Id: I5995684f8df82ccbf19678086a29fcb6e633406f
Reviewed-on: https://chromium-review.googlesource.com/703097
Commit-Queue: Paul Meyer <paulmeyer@chromium.org>
Reviewed-by: Rick Byers <rbyers@chromium.org>
Cr-Commit-Position: refs/heads/master@{#510706}
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/http/tests/serviceworker/webexposed/resources/global-interface-listing-worker.js
[delete] https://crrev.com/f75a3194108ac5f6c7f2698a8fa12719bfc8797a/third_party/WebKit/LayoutTests/platform/mac/virtual/stable/webexposed/global-interface-listing-dedicated-worker-expected.txt
[delete] https://crrev.com/f75a3194108ac5f6c7f2698a8fa12719bfc8797a/third_party/WebKit/LayoutTests/platform/mac/virtual/stable/webexposed/global-interface-listing-expected.txt
[add] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/platform/mac/virtual/stable/webexposed/global-interface-listing-platform-specific-expected.txt
[delete] https://crrev.com/f75a3194108ac5f6c7f2698a8fa12719bfc8797a/third_party/WebKit/LayoutTests/platform/mac/virtual/stable/webexposed/global-interface-listing-shared-worker-expected.txt
[add] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/platform/mac/webexposed/global-interface-listing-platform-specific-expected.txt
[add] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/platform/win/virtual/stable/webexposed/global-interface-listing-platform-specific-expected.txt
[add] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/platform/win/webexposed/global-interface-listing-platform-specific-expected.txt
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/resources/global-interface-listing.js
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/virtual/stable/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-dedicated-worker-expected.txt
[rename] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/virtual/stable/webexposed/global-interface-listing-shared-worker-expected.txt
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-dedicated-worker-expected.txt
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[add] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-platform-specific.html
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-shared-worker-expected.txt
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/webexposed/global-interface-listing.html
[modify] https://crrev.com/87dac2a028dbedbb998a98d4af694d32e6b97c01/third_party/WebKit/LayoutTests/webexposed/resources/global-interface-listing-worker.js

Status: Fixed (was: Started)

Sign in to add a comment