Skip to content
This repository was archived by the owner on Mar 19, 2021. It is now read-only.

Commit e3b9445

Browse files
authored
[css-lists] Parsing of counter-* properties (#18308)
Tests parsing and serialization of - counter-increment - counter-reset - counter-set https://drafts.csswg.org/css-lists-3/#property-index Tests pass on Blink, Firefox and Safari (apart from counter-set on Blink and Safari, where it is not supported)
1 parent 738b3a2 commit e3b9445

File tree

6 files changed

+123
-0
lines changed

6 files changed

+123
-0
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>CSS Lists: parsing counter-increment with invalid values</title>
6+
<link rel="help" href="https://drafts.csswg.org/css-lists-3/#propdef-counter-increment">
7+
<meta name="assert" content="counter-increment supports only the grammar '[ <counter-name> <integer>? ]+ | none'.">
8+
<script src="/resources/testharness.js"></script>
9+
<script src="/resources/testharnessreport.js"></script>
10+
<script src="/css/support/parsing-testcommon.js"></script>
11+
</head>
12+
<body>
13+
<script>
14+
test_invalid_value('counter-increment', 'none chapter');
15+
test_invalid_value('counter-increment', '3');
16+
test_invalid_value('counter-increment', '99 imagenum');
17+
test_invalid_value('counter-increment', 'section -1, imagenum 99');
18+
test_invalid_value('counter-increment', 'section 3.14');
19+
</script>
20+
</body>
21+
</html>
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>CSS Lists: parsing counter-increment with valid values</title>
6+
<link rel="help" href="https://drafts.csswg.org/css-lists-3/#propdef-counter-increment">
7+
<meta name="assert" content="counter-increment supports the full grammar '[ <counter-name> <integer>? ]+ | none'.">
8+
<script src="/resources/testharness.js"></script>
9+
<script src="/resources/testharnessreport.js"></script>
10+
<script src="/css/support/parsing-testcommon.js"></script>
11+
</head>
12+
<body>
13+
<script>
14+
test_valid_value('counter-increment', 'none');
15+
test_valid_value('counter-increment', 'chapter', 'chapter 1');
16+
test_valid_value('counter-increment', 'section -1');
17+
test_valid_value('counter-increment', 'first -1 second third 99', 'first -1 second 1 third 99');
18+
</script>
19+
</body>
20+
</html>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>CSS Lists: parsing counter-reset with invalid values</title>
6+
<link rel="help" href="https://drafts.csswg.org/css-lists-3/#propdef-counter-reset">
7+
<meta name="assert" content="counter-reset supports only the grammar '[ <counter-name> <integer>? ]+ | none'.">
8+
<script src="/resources/testharness.js"></script>
9+
<script src="/resources/testharnessreport.js"></script>
10+
<script src="/css/support/parsing-testcommon.js"></script>
11+
</head>
12+
<body>
13+
<script>
14+
test_invalid_value('counter-reset', 'none chapter');
15+
test_invalid_value('counter-reset', '3');
16+
test_invalid_value('counter-reset', '99 imagenum');
17+
test_invalid_value('counter-reset', 'section -1, imagenum 99');
18+
test_invalid_value('counter-reset', 'section 3.14');
19+
</script>
20+
</body>
21+
</html>
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>CSS Lists: parsing counter-reset with valid values</title>
6+
<link rel="help" href="https://drafts.csswg.org/css-lists-3/#propdef-counter-reset">
7+
<meta name="assert" content="counter-reset supports the full grammar '[ <counter-name> <integer>? ]+ | none'.">
8+
<script src="/resources/testharness.js"></script>
9+
<script src="/resources/testharnessreport.js"></script>
10+
<script src="/css/support/parsing-testcommon.js"></script>
11+
</head>
12+
<body>
13+
<script>
14+
test_valid_value('counter-reset', 'none');
15+
test_valid_value('counter-reset', 'chapter', 'chapter 0');
16+
test_valid_value('counter-reset', 'section -1');
17+
test_valid_value('counter-reset', 'first -1 second third 99', 'first -1 second 0 third 99');
18+
</script>
19+
</body>
20+
</html>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>CSS Lists: parsing counter-set with invalid values</title>
6+
<link rel="help" href="https://drafts.csswg.org/css-lists-3/#propdef-counter-set">
7+
<meta name="assert" content="counter-set supports only the grammar '[ <counter-name> <integer>? ]+ | none'.">
8+
<script src="/resources/testharness.js"></script>
9+
<script src="/resources/testharnessreport.js"></script>
10+
<script src="/css/support/parsing-testcommon.js"></script>
11+
</head>
12+
<body>
13+
<script>
14+
test_invalid_value('counter-set', 'none chapter');
15+
test_invalid_value('counter-set', '3');
16+
test_invalid_value('counter-set', '99 imagenum');
17+
test_invalid_value('counter-set', 'section -1, imagenum 99');
18+
test_invalid_value('counter-set', 'section 3.14');
19+
</script>
20+
</body>
21+
</html>
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>CSS Lists: parsing counter-set with valid values</title>
6+
<link rel="help" href="https://drafts.csswg.org/css-lists-3/#propdef-counter-set">
7+
<meta name="assert" content="counter-set supports the full grammar '[ <counter-name> <integer>? ]+ | none'.">
8+
<script src="/resources/testharness.js"></script>
9+
<script src="/resources/testharnessreport.js"></script>
10+
<script src="/css/support/parsing-testcommon.js"></script>
11+
</head>
12+
<body>
13+
<script>
14+
test_valid_value('counter-set', 'none');
15+
test_valid_value('counter-set', 'chapter', 'chapter 0');
16+
test_valid_value('counter-set', 'section -1');
17+
test_valid_value('counter-set', 'first -1 second third 99', 'first -1 second 0 third 99');
18+
</script>
19+
</body>
20+
</html>

0 commit comments

Comments
 (0)