Update web-platform-tests to revision 60220357131c65146444da1f54624d5b54d0975d

This commit is contained in:
WPT Sync Bot 2018-07-18 15:43:58 +00:00 committed by Tom Servo
parent c45192614c
commit 775b784f79
2144 changed files with 58115 additions and 29658 deletions

View file

@ -1,29 +0,0 @@
<!doctype html>
<meta charset=utf-8>
<title>Animation IDL</title>
<link rel="help" href="https://drafts.csswg.org/web-animations/#animation">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/WebIDLParser.js"></script>
<script src="/resources/idlharness.js"></script>
<div id="log"></div>
<script>
'use strict';
promise_test(async () => {
const idl = await fetch('/interfaces/web-animations.idl').then(r => r.text());
const dom = await fetch('/interfaces/dom.idl').then(r => r.text());
const html = await fetch('/interfaces/html.idl').then(r => r.text());
const idlArray = new IdlArray();
idlArray.add_idls(idl, {only: ['Animation', 'AnimationPlayState']});
idlArray.add_dependency_idls(idl);
idlArray.add_dependency_idls(dom);
idlArray.add_dependency_idls(html);
idlArray.add_untested_idls('interface CSSPseudoElement {};');
idlArray.add_objects( { Animation: ['new Animation()'] } );
idlArray.test();
done();
}, 'Animation interface.');
</script>

View file

@ -0,0 +1,21 @@
// META: script=/resources/WebIDLParser.js
// META: script=/resources/idlharness.js
// https://w3c.github.io/web-animations/#animation
'use strict';
promise_test(async () => {
const srcs = ['web-animations', 'dom', 'html'];
const [idl, dom, html] = await Promise.all(
srcs.map(i => fetch(`/interfaces/${i}.idl`).then(r => r.text())));
const idlArray = new IdlArray();
idlArray.add_idls(idl, {only: ['Animation', 'AnimationPlayState']});
idlArray.add_dependency_idls(idl);
idlArray.add_dependency_idls(dom);
idlArray.add_dependency_idls(html);
idlArray.add_untested_idls('interface CSSPseudoElement {};');
idlArray.add_objects( { Animation: ['new Animation()'] } );
idlArray.test();
}, 'Animation interface.');

View file

@ -71,7 +71,7 @@ async_test(t => {
animation.finish();
}, 'onfinish event is fired when animation.finish() is called');
promise_test(t => {
promise_test(async t => {
const div = createDiv(t);
const animation = div.animate({}, 100 * MS_PER_SEC);
@ -82,38 +82,36 @@ promise_test(t => {
animation.currentTime = 100 * MS_PER_SEC / 2;
animation.pause();
return animation.ready.then(() => {
animation.currentTime = 100 * MS_PER_SEC;
return waitForAnimationFrames(2);
});
await animation.ready;
animation.currentTime = 100 * MS_PER_SEC;
await waitForAnimationFrames(2);
}, 'onfinish event is not fired when paused');
promise_test(t => {
promise_test(async t => {
const div = createDiv(t);
const animation = div.animate({}, 100 * MS_PER_SEC);
animation.onfinish = event => {
assert_unreached('onfinish event should not be fired');
};
return animation.ready.then(() => {
animation.playbackRate = 0;
animation.currentTime = 100 * MS_PER_SEC;
return waitForAnimationFrames(2);
});
await animation.ready;
animation.playbackRate = 0;
animation.currentTime = 100 * MS_PER_SEC;
await waitForAnimationFrames(2);
}, 'onfinish event is not fired when the playbackRate is zero');
promise_test(t => {
promise_test(async t => {
const div = createDiv(t);
const animation = div.animate({}, 100 * MS_PER_SEC);
animation.onfinish = event => {
assert_unreached('onfinish event should not be fired');
};
return animation.ready.then(() => {
animation.currentTime = 100 * MS_PER_SEC;
animation.currentTime = 100 * MS_PER_SEC / 2;
return waitForAnimationFrames(2);
});
await animation.ready;
animation.currentTime = 100 * MS_PER_SEC;
animation.currentTime = 100 * MS_PER_SEC / 2;
await waitForAnimationFrames(2);
}, 'onfinish event is not fired when the animation falls out ' +
'finished state immediately');

View file

@ -1,39 +0,0 @@
<!doctype html>
<meta charset=utf-8>
<title>AnimationPlaybackEvent IDL</title>
<link rel="help"
href="https://drafts.csswg.org/web-animations/#animationplaybackevent">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/WebIDLParser.js"></script>
<script src="/resources/idlharness.js"></script>
<div id="log"></div>
<script>
'use strict';
promise_test(async () => {
const text = await fetch('/interfaces/web-animations.idl').then(response =>
response.text(),
);
const idlArray = new IdlArray();
idlArray.add_untested_idls(`dictionary EventInit {
boolean bubbles = false;
boolean cancelable = false;
boolean composed = false;
};`);
idlArray.add_idls(text, {
only: [
'AnimationPlaybackEventInit',
'AnimationPlaybackEvent',
]
});
idlArray.add_untested_idls('interface Event {};');
idlArray.add_objects({
AnimationPlaybackEvent: ['new AnimationPlaybackEvent(\'cancel\')'],
});
idlArray.test();
done();
}, 'AnimationPlaybackEvent interface.');
</script>

View file

@ -0,0 +1,26 @@
// META: script=/resources/WebIDLParser.js
// META: script=/resources/idlharness.js
// https://w3c.github.io/web-animations/#animationplaybackevent
'use strict';
promise_test(async () => {
const srcs = ['web-animations', 'dom'];
const [idl, dom] = await Promise.all(
srcs.map(i => fetch(`/interfaces/${i}.idl`).then(r => r.text())));
const idlArray = new IdlArray();
idlArray.add_idls(idl, {
only: [
'AnimationPlaybackEventInit',
'AnimationPlaybackEvent',
]
});
idlArray.add_dependency_idls(dom);
idlArray.add_objects({
AnimationPlaybackEvent: ['new AnimationPlaybackEvent("cancel")'],
});
idlArray.test();
}, 'AnimationPlaybackEvent interface.');

View file

@ -1,30 +0,0 @@
<!doctype html>
<meta charset=utf-8>
<title>DocumentTimeline IDL</title>
<link rel="help" href="https://drafts.csswg.org/web-animations/#documenttimeline">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/WebIDLParser.js"></script>
<script src="/resources/idlharness.js"></script>
<div id="log"></div>
<script>
'use strict';
promise_test(async () => {
const text = await fetch('/interfaces/web-animations.idl').then(response =>
response.text(),
);
const idlArray = new IdlArray();
idlArray.add_idls(text, {
only: [
'AnimationTimeline',
'DocumentTimelineOptions',
'DocumentTimeline',
]
});
idlArray.add_objects({ DocumentTimeline: ['document.timeline'] });
idlArray.test();
done();
}, 'DocumentTimeline interface.');
</script>

View file

@ -0,0 +1,22 @@
// META: script=/resources/WebIDLParser.js
// META: script=/resources/idlharness.js
// https://w3c.github.io/web-animations/#documenttimeline
'use strict';
promise_test(async () => {
const text = await fetch('/interfaces/web-animations.idl').then(r => r.text());
const idlArray = new IdlArray();
idlArray.add_idls(text, {
only: [
'AnimationTimeline',
'DocumentTimelineOptions',
'DocumentTimeline',
]
});
idlArray.add_objects({ DocumentTimeline: ['document.timeline'] });
idlArray.test();
done();
}, 'DocumentTimeline interface.');

View file

@ -1,79 +0,0 @@
<!doctype html>
<meta charset=utf-8>
<title>KeyframeEffect IDL</title>
<link rel="help" href="https://drafts.csswg.org/web-animations/#keyframeeffect">
<link rel="help"
href="https://drafts.csswg.org/web-animations/#keyframeeffectreadonly">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/WebIDLParser.js"></script>
<script src="/resources/idlharness.js"></script>
<div id="log"></div>
<script type="text/plain" id="AnimationEffect-IDL">
dictionary EffectTiming {
double delay = 0.0;
double endDelay = 0.0;
FillMode fill = "auto";
double iterationStart = 0.0;
unrestricted double iterations = 1.0;
(unrestricted double or DOMString) duration = "auto";
PlaybackDirection direction = "normal";
DOMString easing = "linear";
};
dictionary OptionalEffectTiming {
double delay;
double endDelay;
FillMode fill;
double iterationStart;
unrestricted double iterations;
(unrestricted double or DOMString) duration;
PlaybackDirection direction;
DOMString easing;
};
dictionary ComputedEffectTiming : EffectTiming {
unrestricted double endTime = 0.0;
unrestricted double activeDuration = 0.0;
double? localTime = null;
double? progress = null;
unrestricted double? currentIteration = null;
};
[Exposed=Window]
interface AnimationEffect {
EffectTiming getTiming();
ComputedEffectTiming getComputedTiming();
void updateTiming(optional OptionalEffectTiming timing);
};
</script>
<script>
'use strict';
promise_test(async () => {
const idlArray = new IdlArray();
idlArray.add_untested_idls(
document.getElementById('AnimationEffect-IDL').textContent
);
const text = await fetch('/interfaces/web-animations.idl').then(response =>
response.text(),
);
idlArray.add_idls(text, {
only: [
'IterationCompositeOperation',
'CompositeOperation',
'KeyframeEffectOptions',
'KeyframeEffect',
]
});
idlArray.add_untested_idls('interface CSSPseudoElement {};');
idlArray.add_untested_idls('interface Element {};');
idlArray.add_objects({
KeyframeEffect: ['new KeyframeEffect(null, null)'],
});
idlArray.test();
done();
}, 'KeyframeEffect interface.');
</script>

View file

@ -0,0 +1,31 @@
// META: script=/resources/WebIDLParser.js
// META: script=/resources/idlharness.js
// https://w3c.github.io/web-animations/#keyframeeffect
'use strict';
promise_test(async () => {
const srcs = ['web-animations', 'html'];
const [idl, html] = await Promise.all(
srcs.map(i => fetch(`/interfaces/${i}.idl`).then(r => r.text())));
const idlArray = new IdlArray();
idlArray.add_idls(idl, {
only: [
'IterationCompositeOperation',
'CompositeOperation',
'KeyframeEffectOptions',
'KeyframeEffect',
]
});
idlArray.add_untested_idls('interface CSSPseudoElement {};');
idlArray.add_dependency_idls(idl);
idlArray.add_dependency_idls(html);
idlArray.add_objects({
KeyframeEffect: ['new KeyframeEffect(null, null)'],
});
idlArray.test();
done();
}, 'KeyframeEffect interface.');

View file

@ -35,8 +35,16 @@ const gNonAnimatableProps = [
'transitionDuration',
'transitionProperty',
'transitionTimingFunction',
'contain',
'direction',
'display',
'textOrientation',
'unicodeBidi',
'willChange',
'writingMode',
'unsupportedProperty',
'font-size', // Supported property that uses dashes
];