servo/tests/wpt/web-platform-tests/css/css-transitions
2019-12-10 11:06:32 +00:00
..
animations Update web-platform-tests to revision f0cb9071aea5ce5b641fcba5f362a0796bdc70bc 2019-11-23 13:39:46 +00:00
parsing Update web-platform-tests to revision d2f5658cb7f7806b2c6adf81ecb7ded82fb85df5 2019-10-24 15:48:44 +00:00
reference Update web-platform-tests to revision 58b72393db0bd273bb93268c33666cf893feb985 2017-10-31 09:04:54 -04:00
support Update web-platform-tests to revision a3dd2ad02c65588ad280ceac378d82e9250d1045 2019-10-23 14:17:29 +00:00
AnimationEffect-getComputedTiming.tentative.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
before-load-001.html Update web-platform-tests to revision d3cf77a7b8c20c678b725238eaa8a72eca3787ae 2019-04-26 01:35:21 -04:00
changing-while-transition-001.html Update web-platform-tests to revision d3cf77a7b8c20c678b725238eaa8a72eca3787ae 2019-04-26 01:35:21 -04:00
changing-while-transition-002.html Update web-platform-tests to revision d3cf77a7b8c20c678b725238eaa8a72eca3787ae 2019-04-26 01:35:21 -04:00
changing-while-transition-003.html Update web-platform-tests to revision d3cf77a7b8c20c678b725238eaa8a72eca3787ae 2019-04-26 01:35:21 -04:00
CSSTransition-canceling.tentative.html Update web-platform-tests to revision 6aef6676d2f95c29de17666cc70d61b517939fbf 2018-08-18 22:44:56 -04:00
CSSTransition-currentTime.tentative.html Update web-platform-tests to revision 6aef6676d2f95c29de17666cc70d61b517939fbf 2018-08-18 22:44:56 -04:00
CSSTransition-effect.tentative.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
CSSTransition-finished.tentative.html Update web-platform-tests to revision 6aef6676d2f95c29de17666cc70d61b517939fbf 2018-08-18 22:44:56 -04:00
CSSTransition-ready.tentative.html Update web-platform-tests to revision 6aef6676d2f95c29de17666cc70d61b517939fbf 2018-08-18 22:44:56 -04:00
CSSTransition-startTime.tentative.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
CSSTransition-transitionProperty.tentative.html Update web-platform-tests to revision 6aef6676d2f95c29de17666cc70d61b517939fbf 2018-08-18 22:44:56 -04:00
currentcolor-animation-001.html Update web-platform-tests to revision d3cf77a7b8c20c678b725238eaa8a72eca3787ae 2019-04-26 01:35:21 -04:00
disconnected-element-001.html Update web-platform-tests to revision e45156b5e558c062a609356905c83a0258c516e3 2019-05-03 00:33:04 -04:00
Document-getAnimations.tentative.html Update web-platform-tests to revision 89aa3f42131cce5a77268ddaeb2fab8a2e29c2a6 2019-11-17 14:10:26 +00:00
Element-getAnimations.tentative.html Update web-platform-tests to revision 6aef6676d2f95c29de17666cc70d61b517939fbf 2018-08-18 22:44:56 -04:00
event-dispatch.tentative.html Update web-platform-tests to revision fe78f2a1ad48c1e0132634e957369d8d674e4258 2019-02-04 23:30:37 -05:00
events-001.html Update web-platform-tests to revision 58b72393db0bd273bb93268c33666cf893feb985 2017-10-31 09:04:54 -04:00
events-002.html Update web-platform-tests to revision 58b72393db0bd273bb93268c33666cf893feb985 2017-10-31 09:04:54 -04:00
events-003.html Update web-platform-tests to revision 58b72393db0bd273bb93268c33666cf893feb985 2017-10-31 09:04:54 -04:00
events-004.html Update web-platform-tests to revision 58b72393db0bd273bb93268c33666cf893feb985 2017-10-31 09:04:54 -04:00
events-005.html Update web-platform-tests to revision 58b72393db0bd273bb93268c33666cf893feb985 2017-10-31 09:04:54 -04:00
events-006.html Update web-platform-tests to revision 58b72393db0bd273bb93268c33666cf893feb985 2017-10-31 09:04:54 -04:00
events-007.html Update web-platform-tests to revision 58b72393db0bd273bb93268c33666cf893feb985 2017-10-31 09:04:54 -04:00
historical.html Update web-platform-tests to revision 1aaada4bbc936024441fe7995b77c21a2c554da1 2018-09-16 22:48:56 -04:00
idlharness.html Update web-platform-tests to revision c792ea26624bde49b72afce348de07ab72fb9ad7 2018-08-13 23:36:02 -04:00
inherit-height-transition.html Update web-platform-tests to revision d7afcb8708eac08a614d161d5622a48172daf7e3 2019-05-15 12:27:06 -04:00
inheritance.html Update web-platform-tests to revision 1aaada4bbc936024441fe7995b77c21a2c554da1 2018-09-16 22:48:56 -04:00
KeyframeEffect-getKeyframes.tentative.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
KeyframeEffect-target.tentative.html Update web-platform-tests to revision 6aef6676d2f95c29de17666cc70d61b517939fbf 2018-08-18 22:44:56 -04:00
META.yml Update web-platform-tests to revision 60220357131c65146444da1f54624d5b54d0975d 2018-07-18 22:07:44 +00:00
no-transition-from-ua-to-blocking-stylesheet-ref.html Update web-platform-tests to revision 138d2e938d493a5c8435025162759c2e34b3b1d1 2019-05-24 13:59:54 +00:00
no-transition-from-ua-to-blocking-stylesheet.html Update web-platform-tests to revision 138d2e938d493a5c8435025162759c2e34b3b1d1 2019-05-24 13:59:54 +00:00
non-rendered-element-001.html Update web-platform-tests to revision d3cf77a7b8c20c678b725238eaa8a72eca3787ae 2019-04-26 01:35:21 -04:00
non-rendered-element-002.html Update web-platform-tests to revision d3cf77a7b8c20c678b725238eaa8a72eca3787ae 2019-04-26 01:35:21 -04:00
properties-value-001.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
properties-value-002.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
properties-value-003.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
properties-value-auto-001.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
properties-value-implicit-001.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
properties-value-inherit-001.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
properties-value-inherit-002.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
properties-value-inherit-003.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
pseudo-elements-001.html Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5 2019-08-19 14:01:14 +00:00
pseudo-elements-002.html Update web-platform-tests to revision 60220357131c65146444da1f54624d5b54d0975d 2018-07-18 22:07:44 +00:00
README.md Update web-platform-tests to revision fa41b43ac93bc2fdc2427a4378dc3754d483cdda 2019-12-10 11:06:32 +00:00
starting-of-transitions-001.html Update web-platform-tests to revision d3cf77a7b8c20c678b725238eaa8a72eca3787ae 2019-04-26 01:35:21 -04:00
transition-001.html Update web-platform-tests to revision 4a5223502fa660ce03e470af6a61c8bc26c5a8ee 2018-04-23 23:10:53 -04:00
transition-background-position-with-edge-offset.html Update web-platform-tests to revision fc33be9acfbf8e883fd9683c527aab22d842542b 2018-03-30 23:11:51 -04:00
transition-delay-000-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-delay-001.html Update web-platform-tests to revision be5419e845d39089ba6dc338c1bd0fa279108317 2018-01-09 12:52:27 -05:00
transition-delay-002-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-delay-003-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-duration-001.html Update web-platform-tests to revision be5419e845d39089ba6dc338c1bd0fa279108317 2018-01-09 12:52:27 -05:00
transition-duration-002-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-duration-003-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-duration-004-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-001.html Update web-platform-tests to revision be5419e845d39089ba6dc338c1bd0fa279108317 2018-01-09 12:52:27 -05:00
transition-property-002.html Update web-platform-tests to revision be5419e845d39089ba6dc338c1bd0fa279108317 2018-01-09 12:52:27 -05:00
transition-property-003-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-004-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-005-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-006-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-007-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-008-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-009-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-010-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-011-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-012-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-013-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-014-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-015-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-016-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-017-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-018-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-019-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-020-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-021-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-022-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-023-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-024-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-025-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-026-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-027-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-028-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-029-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-030-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-031-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-032-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-033-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-034-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-035-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-036-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-037-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-038-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-039-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-040-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-041-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-042-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-043-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-044-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-property-045-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-reparented.html Update web-platform-tests to revision ac4274136e9a034628a3a469890c8e37babbc902 2018-12-14 21:54:18 -05:00
transition-test.html Update web-platform-tests to revision 58b72393db0bd273bb93268c33666cf893feb985 2017-10-31 09:04:54 -04:00
transition-timing-function-002-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-timing-function-003-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-timing-function-004-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-timing-function-005-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-timing-function-006-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transition-timing-function-010-manual.html Update web-platform-tests to revision 332b7c4e711d75ead4c0dfbf7f6f0b683206756d 2019-09-25 13:47:14 +00:00
transitioncancel-001.html Update web-platform-tests to revision 122a4672fa0dc554a6e7528fa3487fd907c792ee 2019-03-23 23:57:08 -04:00
transitionevent-interface.html Update web-platform-tests to revision 36634cbcf3253dfe8d220990a27ad4eeebf8ec2f 2018-09-27 23:48:13 -04:00
zero-duration-multiple-transition.html Update web-platform-tests to revision 76c0092916ee8a9171396e62c472d85a0f2623fb 2018-05-21 22:52:04 -04:00

CSSWG Compatible Tests

Hints

  • en/disable vendor-prefixing in ./support/helper.js see addVendorPrefixes
  • remove extra <length> values to reduce test cases (and thus execution duration) in ./support.properties.js, see values.length

General Properties Test Concept

Using support/property.js test suites compile a list of animatable properties. getPropertyTests() (and the like) will expand the specification's width: length, percentage to width: 1em, 1ex, 1px, … 1% in order to test all possible value types. The propertyTests returned by support/property.js have the following general structure:

{
  // name of the test
  "name": "background-color color(rgba)",
  // property that is being tested
  "property": "background-color",
  // styles to set on the parent container (usually #container)
  "parentStyle": {},
  // initial styles to set on the transition element (usually #transition)
  // may contain additional properties such as position: absolute; as required
  "from": {
    "background-color": "rgba(100,100,100,1)"
  },
  // styles to transition to
  "to": {
    "background-color": "rgba(10,10,10,0.4)"
  },
  // flags classifying property types,
  // currently only {discrete:true} for visbility
  "flags": {}
}

For each compiled test case the test runner identifies computed initial and target values. If they match, no transition will take place, because the property couldn't be parsed. If after starting the transition the computed style matches the target value, the browser applied that value immediately and no transition will take place. During the transition the computed style may match neither initial nor target value (unless it's a discrete transition), or there was no transition.

Besides value-assertions, the suites compare received TransitionEnd events. While the values are only matched against computed initial and target values, expected TransitionEnd events are declared explicitly. This can (and will) lead to some test failures that are arguably not a failure (mainly because the specification didn't cover the specific case). Transitioning color may (or not, depending on browser) also run a transition for background-color, as the latter's default value is currentColor. This suite considers those implicit transitions a failure. If it truly is a failure or not, should be decided in the specification (and tests updated accordingly).

Browsers supporting requestAnimationFrame can run a test in 100ms. Browsers that don't need a wider time frame to allow the not very dead-on-target setTimeout() to be triggered between TransitionStart and TransitionEnd. Low-end CPU devices also benefit from slower transitions. Since a 300 hundred tests, each lasting 500ms would require 2.5 minutes to run, tests are run concurrently, as they cannot affect each other. For low-end devices (e.g. iPad) too many parallel tests lead to global failure, because a single requestAnimationFrame() would have to iterate too many nodes, which is why the suite shards into slices of 50 parallel tests. Tests are run in an off-viewport container, to prevent you from having seizures.

To make individual tests a bit more readable, a lot of the test-functionality has been moved to external JavaScript files. All assertions reside within the test file itsel, though. Although they are mostly exact duplicates of other tests, it should help understanding what a test does (while abstracting away how it does it.)

Debugging

  1. reduce to the tests you want to take a closer look at - see filterPropertyTests() in support/properties.js
  2. disable final cleanup by commenting out done and teardown callbacks
  3. possibly increase the duration and disable the #offscreen (by simply naming it #off-screen)

Unspecified Behavior

the following suites test behavior that is not covered in CSS3 Transitions (as of today):

  • properties-value-002.html - verify value types transitionable but not specified for properties
  • properties-value-003.html - verify transitionable properties thus far not specified at all
  • properties-value-implicit-001.html - verify behavior for em based <length> properties when font-size is changed
  • events-006.html - expect TransitionEnd event to be triggered and event.pseudoElement to be set properly
  • before-load-001.html - expect transitions to be performed before document is fully loaded
  • hidden-container-001.html - expect transitions to NOT be performed if they happen within hidden elements
  • detached-container-001.html - expect transitions to NOT be performed if they happen outside of the document

Yet To Be Tested

These are topics I have identifed in need of testing, but haven gotten around to testing them.

  • Anything involving <svg>
    • well, maybe some day...
  • proper execution of timing-functions - are the right property values set at a given time?
    • how exactly do I pinpoint a specific time to verify a property's value at time t?
    • need to implement cubic-bezier to actually calculate a property's value at time t?
  • selector:hover:before {}
    • I have no clue how to trigger that from script