diff --git a/spec/css/custom_properties/error/bang_in_ident/error b/spec/css/custom_properties/error/bang_in_ident/error deleted file mode 100644 index b764aab46d..0000000000 --- a/spec/css/custom_properties/error/bang_in_ident/error +++ /dev/null @@ -1,3 +0,0 @@ -Error: Invalid CSS after " --prop: foo": expected "}", was "!bar;" - on line 2 of /sass/spec/css/custom_properties/error/bang_in_ident/input.scss - Use --trace for backtrace. diff --git a/spec/css/custom_properties/error/bang_in_ident/error-dart-sass b/spec/css/custom_properties/error/bang_in_ident/error-dart-sass deleted file mode 100644 index aae46c4375..0000000000 --- a/spec/css/custom_properties/error/bang_in_ident/error-dart-sass +++ /dev/null @@ -1,4 +0,0 @@ -Error: expected ";". - --prop: foo!bar; - ^ - spec/css/custom_properties/error/bang_in_ident/input.scss 2:14 root stylesheet diff --git a/spec/css/custom_properties/error/bang_in_ident/expected_output.css b/spec/css/custom_properties/error/bang_in_ident/expected_output.css deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/spec/css/custom_properties/error/bang_in_ident/input.scss b/spec/css/custom_properties/error/bang_in_ident/input.scss deleted file mode 100644 index 8e6e438145..0000000000 --- a/spec/css/custom_properties/error/bang_in_ident/input.scss +++ /dev/null @@ -1,3 +0,0 @@ -.bang-in-ident { - --prop: foo!bar; -} \ No newline at end of file diff --git a/spec/css/custom_properties/error/bang_in_ident/status b/spec/css/custom_properties/error/bang_in_ident/status deleted file mode 100644 index b44fe09a7a..0000000000 --- a/spec/css/custom_properties/error/bang_in_ident/status +++ /dev/null @@ -1 +0,0 @@ -65 \ No newline at end of file diff --git a/spec/css/custom_properties/error/top_level_bang/error b/spec/css/custom_properties/error/top_level_bang/error deleted file mode 100644 index b8bd7ec83f..0000000000 --- a/spec/css/custom_properties/error/top_level_bang/error +++ /dev/null @@ -1,3 +0,0 @@ -Error: Invalid CSS after " --prop: ": expected "}", was "!;" - on line 2 of /sass/spec/css/custom_properties/error/top_level_bang/input.scss - Use --trace for backtrace. diff --git a/spec/css/custom_properties/error/top_level_bang/error-dart-sass b/spec/css/custom_properties/error/top_level_bang/error-dart-sass deleted file mode 100644 index a2d45fae9e..0000000000 --- a/spec/css/custom_properties/error/top_level_bang/error-dart-sass +++ /dev/null @@ -1,4 +0,0 @@ -Error: expected ";". - --prop: !; - ^ - spec/css/custom_properties/error/top_level_bang/input.scss 2:11 root stylesheet diff --git a/spec/css/custom_properties/error/top_level_bang/error-libsass b/spec/css/custom_properties/error/top_level_bang/error-libsass deleted file mode 100644 index 939e971b28..0000000000 --- a/spec/css/custom_properties/error/top_level_bang/error-libsass +++ /dev/null @@ -1,3 +0,0 @@ -Error: Invalid CSS after " --prop:": expected "}", was "!;" - on line 2 of /sass/spec/css/custom_properties/error/top_level_bang/input.scss - Use --trace for backtrace. diff --git a/spec/css/custom_properties/error/top_level_bang/expected_output.css b/spec/css/custom_properties/error/top_level_bang/expected_output.css deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/spec/css/custom_properties/error/top_level_bang/input.scss b/spec/css/custom_properties/error/top_level_bang/input.scss deleted file mode 100644 index 1be6462c9a..0000000000 --- a/spec/css/custom_properties/error/top_level_bang/input.scss +++ /dev/null @@ -1,3 +0,0 @@ -.top-level-bang { - --prop: !; -} \ No newline at end of file diff --git a/spec/css/custom_properties/error/top_level_bang/status b/spec/css/custom_properties/error/top_level_bang/status deleted file mode 100644 index b44fe09a7a..0000000000 --- a/spec/css/custom_properties/error/top_level_bang/status +++ /dev/null @@ -1 +0,0 @@ -65 \ No newline at end of file diff --git a/spec/css/custom_properties/exclamation/expected_output.css b/spec/css/custom_properties/exclamation/expected_output.css new file mode 100644 index 0000000000..2ff8581891 --- /dev/null +++ b/spec/css/custom_properties/exclamation/expected_output.css @@ -0,0 +1,8 @@ +.exclamation { + --important: value !important; + --multiple: !important !important; + --other-word: !something; + --in-identifier: foo!bar; + --just-exclam: !; + --just-exclams: !!!!!!!; +} diff --git a/spec/css/custom_properties/exclamation/input.scss b/spec/css/custom_properties/exclamation/input.scss new file mode 100644 index 0000000000..0bbb56c551 --- /dev/null +++ b/spec/css/custom_properties/exclamation/input.scss @@ -0,0 +1,14 @@ +.exclamation { + // `!` is technically not allowed at the top-level of a custom property, but + // that's only because `!important` is filtered out before the custom property + // is parsed by the CSS parser. As far as Sass is concerned, it's fine. + --important: value !important; + + // We even allow constructions like these for forwards-compatibility with + // additional flags or syntax CSS might add. + --multiple: !important !important; + --other-word: !something; + --in-identifier: foo!bar; + --just-exclam: !; + --just-exclams: !!!!!!!; +} diff --git a/spec/css/custom_properties/exclamation/options.yml b/spec/css/custom_properties/exclamation/options.yml new file mode 100644 index 0000000000..32792ae3c6 --- /dev/null +++ b/spec/css/custom_properties/exclamation/options.yml @@ -0,0 +1,3 @@ +--- +:todo: +- libsass