summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-overflow/parsing
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /testing/web-platform/tests/css/css-overflow/parsing
parentInitial commit. (diff)
downloadthunderbird-upstream.tar.xz
thunderbird-upstream.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/css/css-overflow/parsing')
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-invalid.html22
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-valid.html19
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/continue-invalid.html19
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/continue-valid.html18
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/line-clamp-invalid.html27
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/line-clamp-valid.html24
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/max-lines-invalid.html25
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/max-lines-valid.html19
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/overflow-clip-margin-computed.html33
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/overflow-clip-margin.html34
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/overflow-computed.html54
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/overflow-invalid.html24
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/overflow-valid.html37
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/scrollbar-gutter-invalid.html37
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/scrollbar-gutter-valid.html19
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/text-overflow-computed.html18
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/text-overflow-invalid.html19
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/text-overflow-valid.html18
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/webkit-line-clamp-invalid.html24
-rw-r--r--testing/web-platform/tests/css/css-overflow/parsing/webkit-line-clamp-valid.html20
20 files changed, 510 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-invalid.html
new file mode 100644
index 0000000000..2b9c059a45
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-invalid.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing block-ellipsis with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-block-ellipsis">
+<meta name="assert" content="block-ellipsis supports only the grammar 'none | auto | <string>'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("block-ellipsis", 'hidden');
+
+test_invalid_value("block-ellipsis", 'none auto');
+test_invalid_value("block-ellipsis", 'auto "string"');
+test_invalid_value("block-ellipsis", '"string" none');
+test_invalid_value("block-ellipsis", '"first" "second"');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-valid.html
new file mode 100644
index 0000000000..06148ef01b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-valid.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing block-ellipsis with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-block-ellipsis">
+<meta name="assert" content="block-ellipsis supports the full grammar 'none | auto | <string>'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("block-ellipsis", 'none');
+test_valid_value("block-ellipsis", 'auto');
+test_valid_value("block-ellipsis", '" etc., etc. "');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/continue-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/continue-invalid.html
new file mode 100644
index 0000000000..36e164158f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/continue-invalid.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing continue with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-continue">
+<meta name="assert" content="continue supports only the grammar 'auto | discard'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("continue", 'none');
+
+test_invalid_value("continue", 'auto discard');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/continue-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/continue-valid.html
new file mode 100644
index 0000000000..97524cf80d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/continue-valid.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing continue with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-continue">
+<meta name="assert" content="continue supports the full grammar 'auto | discard'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("continue", 'auto');
+test_valid_value("continue", 'discard');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-invalid.html
new file mode 100644
index 0000000000..7b64e47358
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-invalid.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing line-clamp with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-line-clamp">
+<meta name="assert" content="line-clamp supports only the grammar 'none | <integer> <‘block-ellipsis’>?'.">
+<meta name="assert" content="Zero or negative max-lines integers are invalid.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("line-clamp", 'auto');
+
+test_invalid_value("line-clamp", '0');
+test_invalid_value("line-clamp", '-5');
+
+test_invalid_value("line-clamp", '" etc., etc. "');
+
+test_invalid_value("line-clamp", 'none 2');
+test_invalid_value("line-clamp", '3 none');
+test_invalid_value("line-clamp", 'auto 4');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-valid.html
new file mode 100644
index 0000000000..735300c9ef
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-valid.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing line-clamp with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-line-clamp">
+<meta name="assert" content="line-clamp supports the full grammar 'none | <integer> <‘block-ellipsis’>?'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("line-clamp", 'none');
+
+test_valid_value("line-clamp", '1');
+test_valid_value("line-clamp", '6');
+
+test_valid_value("line-clamp", '7 none');
+test_valid_value("line-clamp", '8 auto', '8');
+test_valid_value("line-clamp", '9 " etc., etc. "');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/max-lines-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/max-lines-invalid.html
new file mode 100644
index 0000000000..85fe77fdb7
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/max-lines-invalid.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing max-lines with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-max-lines">
+<meta name="assert" content="max-lines supports only the grammar 'none | <integer>'.">
+<meta name="assert" content="Zero or negative integers are invalid.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("max-lines", 'auto');
+test_invalid_value("max-lines", '0');
+test_invalid_value("max-lines", '-5');
+
+test_invalid_value("max-lines", 'none none');
+test_invalid_value("max-lines", '1 none');
+test_invalid_value("max-lines", 'none 2');
+test_invalid_value("max-lines", '3 4');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/max-lines-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/max-lines-valid.html
new file mode 100644
index 0000000000..f2fda80c3b
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/max-lines-valid.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing max-lines with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-max-lines">
+<meta name="assert" content="max-lines supports the full grammar 'none | <integer>'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("max-lines", 'none');
+test_valid_value("max-lines", '1');
+test_valid_value("max-lines", '6');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/overflow-clip-margin-computed.html b/testing/web-platform/tests/css/css-overflow/parsing/overflow-clip-margin-computed.html
new file mode 100644
index 0000000000..17f271b370
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/overflow-clip-margin-computed.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: getComputedStyle() for overflow-clip-margin</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#overflow-clip-margin">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_computed_value("overflow-clip-margin", "0px", "0px");
+test_computed_value("overflow-clip-margin", "10px");
+
+test_computed_value("overflow-clip-margin", "content-box");
+test_computed_value("overflow-clip-margin", "content-box 0px", "content-box");
+test_computed_value("overflow-clip-margin", "content-box 10px");
+test_computed_value("overflow-clip-margin", "10px content-box", "content-box 10px");
+
+test_computed_value("overflow-clip-margin", "padding-box", "0px");
+test_computed_value("overflow-clip-margin", "padding-box 0px", "0px");
+test_computed_value("overflow-clip-margin", "padding-box 10px", "10px");
+test_computed_value("overflow-clip-margin", "10px padding-box", "10px");
+
+test_computed_value("overflow-clip-margin", "border-box");
+test_computed_value("overflow-clip-margin", "border-box 0px", "border-box");
+test_computed_value("overflow-clip-margin", "border-box 10px");
+test_computed_value("overflow-clip-margin", "10px border-box", "border-box 10px");
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/overflow-clip-margin.html b/testing/web-platform/tests/css/css-overflow/parsing/overflow-clip-margin.html
new file mode 100644
index 0000000000..bfa4128555
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/overflow-clip-margin.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing overflow-clip-margin</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#overflow-clip-margin">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("overflow-clip-margin", '10px', '10px');
+
+test_valid_value("overflow-clip-margin", 'content-box', 'content-box');
+test_valid_value("overflow-clip-margin", 'content-box 10px', 'content-box 10px');
+test_valid_value("overflow-clip-margin", '10px content-box', 'content-box 10px');
+test_valid_value("overflow-clip-margin", '0px content-box', 'content-box');
+
+test_valid_value("overflow-clip-margin", 'padding-box', '0px');
+test_valid_value("overflow-clip-margin", 'padding-box 0px', '0px');
+test_valid_value("overflow-clip-margin", 'padding-box 10px', '10px');
+test_valid_value("overflow-clip-margin", '10px padding-box', '10px');
+
+test_valid_value("overflow-clip-margin", 'border-box', 'border-box');
+test_valid_value("overflow-clip-margin", 'border-box 0px', 'border-box');
+test_valid_value("overflow-clip-margin", 'border-box 10px', 'border-box 10px');
+test_valid_value("overflow-clip-margin", '10px border-box', 'border-box 10px');
+
+test_invalid_value("overflow-clip-margin", 'margin-box');
+test_invalid_value("overflow-clip-margin", 'inset(10px)');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/overflow-computed.html b/testing/web-platform/tests/css/css-overflow/parsing/overflow-computed.html
new file mode 100644
index 0000000000..563d1b31d2
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/overflow-computed.html
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: getComputedStyle().overflow</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-overflow">
+<meta name="assert" content="visible/clip compute to auto/hidden (respectively) if one of overflow-x or overflow-y is neither visible nor clip.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_computed_value("overflow", 'visible');
+test_computed_value("overflow", 'hidden');
+test_computed_value("overflow", 'clip');
+test_computed_value("overflow", 'scroll');
+test_computed_value("overflow", 'auto');
+
+test_computed_value("overflow", 'auto auto', 'auto');
+test_computed_value("overflow", 'auto clip', 'auto hidden');
+test_computed_value("overflow", 'auto visible', 'auto');
+test_computed_value("overflow", 'clip auto', 'hidden auto');
+test_computed_value("overflow", 'clip clip', 'clip');
+test_computed_value("overflow", 'clip hidden', 'hidden');
+test_computed_value("overflow", 'clip scroll', 'hidden scroll')
+test_computed_value("overflow", 'clip visible', 'clip visible')
+test_computed_value("overflow", 'hidden clip', 'hidden');
+test_computed_value("overflow", 'hidden visible', 'hidden auto');
+test_computed_value("overflow", 'scroll auto');
+test_computed_value("overflow", 'scroll clip', 'scroll hidden');
+test_computed_value("overflow", 'scroll visible', 'scroll auto');
+test_computed_value("overflow", 'visible auto', 'auto');
+test_computed_value("overflow", 'visible hidden', 'auto hidden');
+test_computed_value("overflow", 'visible scroll', 'auto scroll');
+test_computed_value("overflow", 'visible clip', 'visible clip');
+test_computed_value("overflow", 'visible visible', 'visible');
+
+
+test_computed_value("overflow-x", 'scroll');
+test_computed_value("overflow-x", 'hidden');
+test_computed_value("overflow-x", 'visible');
+test_computed_value("overflow-y", 'clip');
+test_computed_value("overflow-y", 'auto');
+test_computed_value("overflow-y", 'visible');
+test_computed_value("overflow-block", 'hidden');
+test_computed_value("overflow-block", 'clip');
+test_computed_value("overflow-block", 'visible');
+test_computed_value("overflow-inline", 'scroll');
+test_computed_value("overflow-inline", 'visible');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/overflow-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/overflow-invalid.html
new file mode 100644
index 0000000000..c99fda7f78
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/overflow-invalid.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing overflow with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-overflow">
+<meta name="assert" content="overflow supports only the grammar '[ visible | hidden | clip | scroll | auto ]{1,2}'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("overflow", 'none');
+test_invalid_value("overflow", 'visible clip auto');
+
+
+test_invalid_value("overflow-x", 'visible clip');
+test_invalid_value("overflow-y", 'clip hidden');
+test_invalid_value("overflow-block", 'hidden scroll');
+test_invalid_value("overflow-inline", 'scroll auto');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/overflow-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/overflow-valid.html
new file mode 100644
index 0000000000..02ddd93859
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/overflow-valid.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing overflow with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-overflow">
+<meta name="assert" content="overflow supports the full grammar '[ visible | hidden | clip | scroll | auto ]{1,2}'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("overflow", 'visible');
+test_valid_value("overflow", 'hidden');
+test_valid_value("overflow", 'clip');
+test_valid_value("overflow", 'scroll');
+test_valid_value("overflow", 'auto');
+
+test_valid_value("overflow", 'visible visible', 'visible');
+test_valid_value("overflow", 'hidden visible');
+test_valid_value("overflow", 'clip clip', 'clip');
+test_valid_value("overflow", 'scroll auto');
+test_valid_value("overflow", 'auto auto', 'auto');
+
+
+test_valid_value("overflow-x", 'visible');
+test_valid_value("overflow-x", 'scroll');
+test_valid_value("overflow-y", 'clip');
+test_valid_value("overflow-y", 'auto');
+test_valid_value("overflow-block", 'hidden');
+test_valid_value("overflow-block", 'clip');
+test_valid_value("overflow-inline", 'scroll');
+test_valid_value("overflow-inline", 'visible');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/scrollbar-gutter-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/scrollbar-gutter-invalid.html
new file mode 100644
index 0000000000..4f669225ee
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/scrollbar-gutter-invalid.html
@@ -0,0 +1,37 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing invalid scrollbar-gutter declarations</title>
+<link rel="author" title="Felipe Erias Morandeira" href="mailto:felipeerias@gmail.com"/>
+<link rel="help" href="https://www.w3.org/TR/css-overflow-4/#scollbar-gutter-property"/>
+<meta name="assert" content="Parsing invalid scrollbar-gutter declarations">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+
+<script>
+
+ test_invalid_value("scrollbar-gutter", "auto both");
+ test_invalid_value("scrollbar-gutter", "force auto");
+ test_invalid_value("scrollbar-gutter", "auto always");
+ test_invalid_value("scrollbar-gutter", "always stable");
+ test_invalid_value("scrollbar-gutter", "force");
+ test_invalid_value("scrollbar-gutter", "both");
+ test_invalid_value("scrollbar-gutter", "force both");
+
+ test_invalid_value("scrollbar-gutter", "");
+ test_invalid_value("scrollbar-gutter", "0");
+ test_invalid_value("scrollbar-gutter", "1px");
+ test_invalid_value("scrollbar-gutter", "3em");
+ test_invalid_value("scrollbar-gutter", "1 2 3");
+ test_invalid_value("scrollbar-gutter", "none");
+ test_invalid_value("scrollbar-gutter", "red");
+
+ test_invalid_value("scrollbar-gutter", "stable both");
+ test_invalid_value("scrollbar-gutter", "stable force");
+ test_invalid_value("scrollbar-gutter", "stable both force");
+ test_invalid_value("scrollbar-gutter", "always");
+ test_invalid_value("scrollbar-gutter", "always both");
+ test_invalid_value("scrollbar-gutter", "always force");
+ test_invalid_value("scrollbar-gutter", "always both force");
+
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/scrollbar-gutter-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/scrollbar-gutter-valid.html
new file mode 100644
index 0000000000..97ac6afec6
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/scrollbar-gutter-valid.html
@@ -0,0 +1,19 @@
+<!doctype html>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing valid scrollbar-gutter declarations</title>
+<link rel="author" title="Felipe Erias Morandeira" href="mailto:felipeerias@gmail.com"/>
+<link rel="help" href="https://www.w3.org/TR/css-overflow-4/#scollbar-gutter-property"/>
+<meta name="assert" content="Parsing valid scrollbar-gutter declarations">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+
+<script>
+
+ test_valid_value("scrollbar-gutter", "auto");
+ test_valid_value("scrollbar-gutter", "stable");
+ test_valid_value("scrollbar-gutter", "stable both-edges");
+
+ test_valid_value("scrollbar-gutter", "both-edges stable", "stable both-edges");
+
+</script>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-computed.html b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-computed.html
new file mode 100644
index 0000000000..60add5dd12
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-computed.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: getComputedStyle().textOverflow</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-text-overflow">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_computed_value("text-overflow", 'clip');
+test_computed_value("text-overflow", 'ellipsis');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-invalid.html
new file mode 100644
index 0000000000..785632a727
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-invalid.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing text-overflow with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-text-overflow">
+<meta name="assert" content="text-overflow supports only the grammar 'clip | ellipsis'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("text-overflow", 'auto');
+
+test_invalid_value("text-overflow", 'clip ellipsis clip');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-valid.html
new file mode 100644
index 0000000000..df77dffd6d
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-valid.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing text-overflow with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#propdef-text-overflow">
+<meta name="assert" content="text-overflow supports the full grammar 'clip | ellipsis'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("text-overflow", 'clip');
+test_valid_value("text-overflow", 'ellipsis');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/webkit-line-clamp-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/webkit-line-clamp-invalid.html
new file mode 100644
index 0000000000..6bb90fa9e1
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/webkit-line-clamp-invalid.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing -webkit-line-clamp with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#webkit-line-clamp">
+<meta name="assert" content="-webkit-line-clamp supports only the grammar 'none | <integer>'.">
+<meta name="assert" content="Zero or negative max-lines integers are invalid.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("-webkit-line-clamp", 'auto');
+
+test_invalid_value("-webkit-line-clamp", '0');
+test_invalid_value("-webkit-line-clamp", '-5');
+
+test_invalid_value("-webkit-line-clamp", 'none "~"');
+test_invalid_value("-webkit-line-clamp", '1 "~"');
+</script>
+</body>
+</html>
diff --git a/testing/web-platform/tests/css/css-overflow/parsing/webkit-line-clamp-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/webkit-line-clamp-valid.html
new file mode 100644
index 0000000000..8b0e9c49e9
--- /dev/null
+++ b/testing/web-platform/tests/css/css-overflow/parsing/webkit-line-clamp-valid.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Overflow: parsing -webkit-line-clamp with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-overflow/#webkit-line-clamp">
+<meta name="assert" content="-webkit-line-clamp supports the full grammar 'none | <integer>'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("-webkit-line-clamp", 'none');
+
+test_valid_value("-webkit-line-clamp", '1');
+test_valid_value("-webkit-line-clamp", '6');
+</script>
+</body>
+</html>