From d4fa62880c2c9accf53af1a9da46f57a45a5c82a Mon Sep 17 00:00:00 2001 From: Pixel998 Date: Mon, 24 Aug 2026 21:53:11 +0300 Subject: [PATCH] test: cover `revert-rule` CSS-wide keyword --- docs/rules/font-family-fallbacks.md | 2 +- docs/rules/relative-font-units.md | 2 +- tests/rules/font-family-fallbacks.test.js | 2 ++ tests/rules/no-invalid-properties.test.js | 9 +++++++++ tests/rules/relative-font-units.test.js | 2 ++ 5 files changed, 15 insertions(+), 2 deletions(-) diff --git a/docs/rules/font-family-fallbacks.md b/docs/rules/font-family-fallbacks.md index a59abc32..b889d309 100644 --- a/docs/rules/font-family-fallbacks.md +++ b/docs/rules/font-family-fallbacks.md @@ -12,7 +12,7 @@ It is a best practice to use a fallback font and a generic font last in the `fon ## Rule Details -This rule enforces the use of fallback fonts and a generic font last in `font-family` and `font` property. Global values (`inherit`, `initial`, `revert`, `revert-layer`, `unset`) are always allowed. +This rule enforces the use of fallback fonts and a generic font last in `font-family` and `font` property. Global values (`inherit`, `initial`, `revert`, `revert-layer`, `revert-rule`, `unset`) are always allowed. Example of **incorrect** code: diff --git a/docs/rules/relative-font-units.md b/docs/rules/relative-font-units.md index 9097e19d..2e7326a2 100644 --- a/docs/rules/relative-font-units.md +++ b/docs/rules/relative-font-units.md @@ -19,7 +19,7 @@ Generally, relative units such as `rem` or `em` are preferred over absolute ones ## Rule Details -This rule enforces the use of relative units for font size. Relative-size keywords (`smaller`, `larger`) and global values (`inherit`, `initial`, `revert`, `revert-layer`, `unset`) are always allowed. Conversely, absolute-size keywords (`xx-small`, `x-small`, `small`, `medium`, `large`, `x-large`, `xx-large`, `xxx-large`) along with the `math` keyword and any absolute length units (such as `px` or `pt`), are never allowed. +This rule enforces the use of relative units for font size. Relative-size keywords (`smaller`, `larger`) and global values (`inherit`, `initial`, `revert`, `revert-layer`, `revert-rule`, `unset`) are always allowed. Conversely, absolute-size keywords (`xx-small`, `x-small`, `small`, `medium`, `large`, `x-large`, `xx-large`, `xxx-large`) along with the `math` keyword and any absolute length units (such as `px` or `pt`), are never allowed. ## Options diff --git a/tests/rules/font-family-fallbacks.test.js b/tests/rules/font-family-fallbacks.test.js index e175a3c6..00a410aa 100644 --- a/tests/rules/font-family-fallbacks.test.js +++ b/tests/rules/font-family-fallbacks.test.js @@ -14,11 +14,13 @@ ruleTester.run("font-family-fallbacks", rule, { "a { font-family: initial; }", "a { font-family: revert; }", "a { font-family: revert-layer; }", + "a { font-family: revert-rule; }", "a { font-family: unset; }", "a { font: inherit; }", "a { font: initial; }", "a { font: revert; }", "a { font: revert-layer; }", + "a { font: revert-rule; }", "a { font: unset; }", ":root { --my-font: sans-serif; } a { font-family: var(--my-font); }", ":root { --foo: 3rem; } a { font-family: var(--my-font); }", diff --git a/tests/rules/no-invalid-properties.test.js b/tests/rules/no-invalid-properties.test.js index eb204710..3e4c7d4c 100644 --- a/tests/rules/no-invalid-properties.test.js +++ b/tests/rules/no-invalid-properties.test.js @@ -282,6 +282,15 @@ ruleTester.run("no-invalid-properties", rule, { "a { width: env(titlebar-area-width); }", "a { padding: env(safe-area-inset-top) 0 env(safe-area-inset-bottom) 0; }", "a { padding: env(safe-area-inset-top) red }", + + // CSS-wide keywords are valid for every property + "a { color: inherit; }", + "a { color: initial; }", + "a { color: unset; }", + "a { color: revert; }", + "a { color: revert-layer; }", + "a { color: revert-rule; }", + "a { width: revert-rule; }", ], invalid: [ { diff --git a/tests/rules/relative-font-units.test.js b/tests/rules/relative-font-units.test.js index 33c09080..104c892c 100644 --- a/tests/rules/relative-font-units.test.js +++ b/tests/rules/relative-font-units.test.js @@ -52,6 +52,8 @@ ruleTester.run("relative-font-units", rule, { "a { font: revert Arial, sans-serif; }", "a { font-size: revert-layer; }", "a { font: revert-layer Arial, sans-serif; }", + "a { font-size: revert-rule; }", + "a { font: revert-rule Arial, sans-serif; }", "a { font-size: unset; }", "a { font: unset Arial, sans-serif; }", "a { font: 1rem/120% Arial, sans-serif; }",