Closed Bug 1616368 Opened 5 years ago Closed 5 years ago

Support manifest level defaults in reftest manifests

Categories

(Testing :: Reftest, enhancement, P1)

Version 3
enhancement

Tracking

(firefox75 fixed)

RESOLVED FIXED
mozilla75
Tracking Status
firefox75 --- fixed

People

(Reporter: ahal, Assigned: ahal)

References

(Blocks 2 open bugs)

Details

Attachments

(2 files)

Reftest manifests currently support a default-preferences identifier that can be used to set prefs once that then get used by all subsequent tests in a manifest. I need the ability to also specify manifest level skip-if identifiers.

I propose that rather than adding a new default-skip-if tag, we instead implement a generic defaults line that can contain any of the test modifiers. So, e.g:

defaults pref(some.pref,true) skip-if(someCondition) http
== test-foo.html test-foo-ref.html
!= test-bar.html test-bar-ref.html

// clears defaults
defaults
== test-baz.html test-baz-ref.html

For context, I need this because we are going to start scheduling tests more granularly (i.e by passing in paths to manifests). One of the blockers around getting reftest supported is the fact that we have a single root manifest that registers all the other manifests. This root manifest contains a few skip-if keys that would no longer be picked up if we were to start passing the child manifests into the harness directly. So instead, we need to encode these skip-if annotations directly into the included manifests themselves.

Needinfo'ing you because if you're anything like me, you never see those phabricator mentions:
https://phabricator.services.mozilla.com/D63247#inline-381237

Flags: needinfo?(james)

Are you planning to remove the ability to have a skip/skip-if() default across an include line after you've done this? (Separate bug makes sense, but it would probably be good to have on file.)

Flags: needinfo?(ahal)

I can answer the question to James since I'm usually the one to run that script (and will once I submit the phab review) -- it's fine.

Flags: needinfo?(james)

I wasn't initially planning to (there are sub-manifests that have a skip on includes that won't get in the way of anything), but I can certainly do this if you like.

It is nice to have skips encoded directly in the manifest that needs them. That way tests will be skipped even when passing those manifests directly into the harness (rather than the parent).

I'll be filing another bug to deprecate the root manifest and can remove the ability to skip includes as part of that bug.

Flags: needinfo?(ahal)
Pushed by ahalberstadt@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/3eb51d4d8499 [reftest] Implement ability to set manifest-level defaults r=dbaron https://hg.mozilla.org/integration/autoland/rev/a183c3e2eacf [reftest] Replace 'default-preferences' with 'defaults' r=dbaron
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/21906 for changes under testing/web-platform/tests
Upstream web-platform-tests status checks passed, PR will merge once commit reaches central.
Blocks: 1616961

(In reply to Andrew Halberstadt [:ahal] from comment #6)

I wasn't initially planning to (there are sub-manifests that have a skip on includes that won't get in the way of anything), but I can certainly do this if you like.

It is nice to have skips encoded directly in the manifest that needs them. That way tests will be skipped even when passing those manifests directly into the harness (rather than the parent).

I'll be filing another bug to deprecate the root manifest and can remove the ability to skip includes as part of that bug.

Actually there are some skip-if(...) includes in the jstests.list manifests that look like they are skipping generated manifests. So we'll need to do something about those prior to removing the ability to skip includes. I'll file an independent bug to do this, though this work is getting a bit out of scope for my current project.

Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla75
Upstream PR merged by moz-wptsync-bot
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: