mirror of
https://github.com/servo/servo.git
synced 2025-08-14 01:45:33 +01:00
Update web-platform-tests to revision b'9be67046d1f0d57d0d4fba089f151ef044572f5d'
This commit is contained in:
parent
55c6d24dca
commit
831ab387a5
124 changed files with 3104 additions and 542 deletions
|
@ -0,0 +1,11 @@
|
|||
<!DOCTYPE html>
|
||||
<title>Reference: Number input in vertical writing mode with long value does not cause ink overflow</title>
|
||||
<p>Number input with long value does not cause ink overflow</p>
|
||||
<style>
|
||||
input {
|
||||
writing-mode: vertical-lr;
|
||||
appearance: none;
|
||||
inline-size: 10em;
|
||||
}
|
||||
</style>
|
||||
<input type="number">
|
|
@ -0,0 +1,17 @@
|
|||
<!DOCTYPE html>
|
||||
<link rel="author" title="Tim Nguyen" href="https://github.com/nt1m">
|
||||
<link rel="help" href="https://html.spec.whatwg.org/#the-input-element">
|
||||
<link rel="help" href="https://drafts.csswg.org/css-writing-modes-4/#block-flow">
|
||||
<title>Number input in vertical writing mode with long value does not cause ink overflow</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="match" href="number-input-vertical-overflow-ref.html">
|
||||
<style>
|
||||
input {
|
||||
writing-mode: vertical-lr;
|
||||
color: transparent;
|
||||
appearance: none;
|
||||
inline-size: 10em;
|
||||
}
|
||||
</style>
|
||||
<p>Number input with long value does not cause ink overflow</p>
|
||||
<input type="number" value="11111111111111111111111111111111111">
|
|
@ -0,0 +1,3 @@
|
|||
<!DOCTYPE html>
|
||||
<title>Reference: painting of input[type=range] does not happen outside of its bounds</title>
|
||||
<p>The range input below should be fully covered.</p>
|
|
@ -0,0 +1,37 @@
|
|||
<!DOCTYPE html>
|
||||
<link rel="author" title="Tim Nguyen" href="https://github.com/nt1m">
|
||||
<link rel="help" href="https://html.spec.whatwg.org/#range-state-(type=range)">
|
||||
<link rel="help" href="https://drafts.csswg.org/css-writing-modes-4/#block-flow">
|
||||
<title>Test that painting of input[type=range] does not happen outside of its bounds</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="match" href="range-input-painting-ref.html">
|
||||
|
||||
<style>
|
||||
#container {
|
||||
position: relative;
|
||||
}
|
||||
#cover {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: red;
|
||||
}
|
||||
@supports (writing-mode: vertical-lr) {
|
||||
#cover {
|
||||
background-color: Canvas;
|
||||
}
|
||||
}
|
||||
input {
|
||||
appearance: none;
|
||||
writing-mode: vertical-lr;
|
||||
}
|
||||
</style>
|
||||
|
||||
<p>The range input below should be fully covered.</p>
|
||||
|
||||
<div id="container">
|
||||
<input type="range">
|
||||
<div id="cover"></div>
|
||||
</div>
|
|
@ -0,0 +1,39 @@
|
|||
<!DOCTYPE html>
|
||||
<link rel="author" title="Tim Nguyen" href="https://github.com/nt1m">
|
||||
<link rel="help" href="https://html.spec.whatwg.org/#range-state-(type=range)">
|
||||
<link rel="help" href="https://drafts.csswg.org/css-writing-modes-4/#block-flow">
|
||||
<title>Test that painting of input[type=range] does not happen outside of its bounds</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="match" href="range-input-painting-ref.html">
|
||||
|
||||
<style>
|
||||
#container {
|
||||
position: relative;
|
||||
}
|
||||
#cover {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: red;
|
||||
}
|
||||
@supports (writing-mode: vertical-lr) and (direction: rtl) {
|
||||
#cover {
|
||||
background-color: Canvas;
|
||||
}
|
||||
}
|
||||
input {
|
||||
appearance: none;
|
||||
writing-mode: vertical-lr;
|
||||
direction: rtl;
|
||||
}
|
||||
</style>
|
||||
|
||||
<p>The range input below should be fully covered.</p>
|
||||
|
||||
<div id="container">
|
||||
<input type="range">
|
||||
<div id="cover"></div>
|
||||
</div>
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
<!doctype html>
|
||||
<link rel="author" title="Tim Nguyen" href="https://github.com/nt1m">
|
||||
<link rel="help" href="https://html.spec.whatwg.org/#the-input-element">
|
||||
<link rel="help" href="https://drafts.csswg.org/css-writing-modes-4/#block-flow">
|
||||
<title>Test that typing lots of characters inside vertical text inputs doesn't cause scroll position changes</title>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/resources/testdriver.js"></script>
|
||||
<script src="/resources/testdriver-vendor.js"></script>
|
||||
|
||||
<style>
|
||||
.spacer {
|
||||
height: 100vh;
|
||||
}
|
||||
input { font-family: monospace; }
|
||||
</style>
|
||||
|
||||
<div class="spacer"></div>
|
||||
<input id="testInput">
|
||||
<div class="spacer"></div>
|
||||
|
||||
<script>
|
||||
for (const inputType of ["text", "password", "search", "number"]) {
|
||||
testInput.type = inputType;
|
||||
for (const writingMode of ["vertical-lr", "vertical-rl", "sideways-lr", "sideways-rl"]) {
|
||||
if (!CSS.supports("writing-mode", writingMode))
|
||||
continue;
|
||||
promise_test(async t => {
|
||||
assert_true(
|
||||
document.documentElement.scrollHeight > document.documentElement.clientHeight,
|
||||
"Page is scrollable"
|
||||
);
|
||||
testInput.style.writingMode = writingMode;
|
||||
document.documentElement.scrollTop = 0;
|
||||
t.add_cleanup(() => {
|
||||
document.documentElement.scrollTop = 0;
|
||||
testInput.value = "";
|
||||
});
|
||||
|
||||
// Align input to the bottom edge
|
||||
testInput.scrollIntoView({block: "end", inline: "nearest"});
|
||||
|
||||
assert_true(
|
||||
document.documentElement.scrollTop > 0,
|
||||
"Successfully scrolled"
|
||||
);
|
||||
|
||||
const oldScrollTop = document.documentElement.scrollTop;
|
||||
|
||||
const numCharsToOverflow = document.documentElement.clientHeight / parseInt(getComputedStyle(testInput).fontSize);
|
||||
const value = "1".repeat(numCharsToOverflow);
|
||||
|
||||
await test_driver.click(testInput);
|
||||
|
||||
assert_true(testInput.matches(":focus"), "input is focused");
|
||||
|
||||
await test_driver.send_keys(testInput, value);
|
||||
|
||||
assert_equals(
|
||||
document.documentElement.scrollTop,
|
||||
oldScrollTop,
|
||||
"Typing lots of characters in input did not cause scrolling"
|
||||
);
|
||||
}, `input[type=${inputType}] in ${writingMode}: typing characters in input should not cause the page to scroll`);
|
||||
}
|
||||
}
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue