mirror of
https://github.com/servo/servo.git
synced 2025-08-06 06:00:15 +01:00
Update web-platform-tests to revision 82b73b315ce7ed1554e7a9b7bced66a5831e4ee5
This commit is contained in:
parent
00a9f30773
commit
76712d7d25
353 changed files with 6528 additions and 1307 deletions
|
@ -61,5 +61,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -45,5 +45,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -61,5 +61,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -61,5 +61,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -45,5 +45,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -61,5 +61,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -55,5 +55,5 @@
|
|||
<!-- A replaced percentage min-width/min-height should resolve itself against the available size. -->
|
||||
<img class="child" style="width: 5px; min-width: 20%; height: 5px; min-height: 50%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -55,5 +55,5 @@
|
|||
<!-- A replaced percentage min-width/min-height should resolve itself against the available size. -->
|
||||
<img class="child" style="width: 5px; min-width: 20%; height: 5px; min-height: 50%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -45,5 +45,5 @@
|
|||
<!-- For replaced elements, both axis should be resolved to 0px. -->
|
||||
<img class="child" style="--inline-size-expected: 0px; --block-size-expected: 0px; width: 100%; height: 100%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -55,5 +55,5 @@
|
|||
<!-- A replaced percentage min-width/min-height should resolve itself against the available size. -->
|
||||
<img class="child" style="width: 5px; min-width: 20%; height: 5px; min-height: 50%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -55,5 +55,5 @@
|
|||
<!-- A replaced percentage min-width/min-height should resolve itself against the available size. -->
|
||||
<img class="child" style="width: 5px; min-width: 20%; height: 5px; min-height: 50%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -56,5 +56,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -55,5 +55,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -56,5 +56,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -55,5 +55,5 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -54,5 +54,5 @@
|
|||
<!-- A replaced percentage min-height should resolve itself against the percentageBlockSize. -->
|
||||
<img class="child" style="height: 5px; min-height: 50%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -54,5 +54,5 @@
|
|||
<!-- A replaced percentage min-width should resolve itself against the percentageInlineSize. -->
|
||||
<img class="child" style="width: 5px; min-width: 50%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -43,5 +43,5 @@
|
|||
<!-- A percentage shouldn't be resolved against an invalid percentageBlockSize. -->
|
||||
<img class="child" style="--inline-size-expected: 10px; --block-size-expected: 0px; height: 100%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -51,5 +51,5 @@
|
|||
</div>
|
||||
</div>
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -54,5 +54,5 @@
|
|||
<!-- A replaced percentage min-height should resolve itself against the percentageInlineSize. -->
|
||||
<img class="child" style="height: 5px; min-height: 50%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -54,5 +54,5 @@
|
|||
<!-- A replaced percentage min-width should resolve itself against the percentageBlockSize. -->
|
||||
<img class="child" style="width: 5px; min-width: 50%;" />
|
||||
<script>
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: '../support/layout-child-sizes-worklet.js'});
|
||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.layoutWorklet, {url: 'support/layout-child-sizes-worklet.js'});
|
||||
</script>
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
import {areArraysEqual} from '/common/arrays.js';
|
||||
|
||||
function parseNumber(value) {
|
||||
const num = parseInt(value.toString());
|
||||
if (isNaN(num)) return undefined;
|
||||
return num;
|
||||
}
|
||||
|
||||
registerLayout('test', class {
|
||||
static get childInputProperties() {
|
||||
return [
|
||||
'--available-inline-size',
|
||||
'--available-block-size',
|
||||
'--fixed-inline-size',
|
||||
'--fixed-block-size',
|
||||
'--percentage-inline-size',
|
||||
'--percentage-block-size',
|
||||
'--inline-size-expected',
|
||||
'--block-size-expected'
|
||||
];
|
||||
}
|
||||
|
||||
async intrinsicSizes() {}
|
||||
async layout(children, edges, constraints, styleMap) {
|
||||
const childFragments = await Promise.all(children.map((child) => {
|
||||
const childConstraints = {};
|
||||
const availableInlineSize = parseNumber(child.styleMap.get('--available-inline-size'));
|
||||
const availableBlockSize = parseNumber(child.styleMap.get('--available-block-size'));
|
||||
const fixedInlineSize = parseNumber(child.styleMap.get('--fixed-inline-size'));
|
||||
const fixedBlockSize = parseNumber(child.styleMap.get('--fixed-block-size'));
|
||||
const percentageInlineSize = parseNumber(child.styleMap.get('--percentage-inline-size'));
|
||||
const percentageBlockSize = parseNumber(child.styleMap.get('--percentage-block-size'));
|
||||
return child.layoutNextFragment({
|
||||
availableInlineSize,
|
||||
availableBlockSize,
|
||||
fixedInlineSize,
|
||||
fixedBlockSize,
|
||||
percentageInlineSize,
|
||||
percentageBlockSize,
|
||||
});
|
||||
}));
|
||||
|
||||
const actual = childFragments.map((childFragment) => {
|
||||
return {
|
||||
inlineSize: childFragment.inlineSize,
|
||||
blockSize: childFragment.blockSize,
|
||||
};
|
||||
});
|
||||
|
||||
const expected = children.map((child) => {
|
||||
return {
|
||||
inlineSize: parseInt(child.styleMap.get('--inline-size-expected').toString()),
|
||||
blockSize: parseInt(child.styleMap.get('--block-size-expected').toString()),
|
||||
};
|
||||
});
|
||||
|
||||
const equalityFunc = (a, b) => {
|
||||
return a.inlineSize == b.inlineSize && a.blockSize == b.blockSize;
|
||||
};
|
||||
|
||||
if (!areArraysEqual(expected, actual, equalityFunc)) {
|
||||
return {autoBlockSize: 0, childFragments};
|
||||
}
|
||||
|
||||
return {autoBlockSize: 100, childFragments};
|
||||
}
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue