diff --git a/lib/rules/declaration-block-no-duplicate-properties/__tests__/index.js b/lib/rules/declaration-block-no-duplicate-properties/__tests__/index.js
index 378054f934..05e7e0718a 100644
--- a/lib/rules/declaration-block-no-duplicate-properties/__tests__/index.js
+++ b/lib/rules/declaration-block-no-duplicate-properties/__tests__/index.js
@@ -5,6 +5,7 @@ const { messages, ruleName } = require('..');
testRule({
ruleName,
config: [true],
+ fix: true,
accept: [
{
@@ -48,6 +49,7 @@ testRule({
reject: [
{
code: 'a { color: pink; color: orange }',
+ fixed: 'a { color: orange }',
message: messages.rejected('color'),
line: 1,
column: 18,
@@ -56,6 +58,7 @@ testRule({
},
{
code: 'a { cOlOr: pink; color: orange }',
+ fixed: 'a { color: orange }',
message: messages.rejected('color'),
line: 1,
column: 18,
@@ -64,6 +67,7 @@ testRule({
},
{
code: 'a { color: pink; cOlOr: orange }',
+ fixed: 'a { cOlOr: orange }',
message: messages.rejected('cOlOr'),
line: 1,
column: 18,
@@ -72,6 +76,7 @@ testRule({
},
{
code: 'a { cOlOr: pink; cOlOr: orange }',
+ fixed: 'a { cOlOr: orange }',
message: messages.rejected('cOlOr'),
line: 1,
column: 18,
@@ -80,6 +85,7 @@ testRule({
},
{
code: 'a { COLOR: pink; color: orange }',
+ fixed: 'a { color: orange }',
message: messages.rejected('color'),
line: 1,
column: 18,
@@ -88,6 +94,7 @@ testRule({
},
{
code: 'a { color: pink; COLOR: orange }',
+ fixed: 'a { COLOR: orange }',
message: messages.rejected('COLOR'),
line: 1,
column: 18,
@@ -96,6 +103,7 @@ testRule({
},
{
code: 'a { color: pink; background: orange; color: orange }',
+ fixed: 'a { background: orange; color: orange }',
message: messages.rejected('color'),
line: 1,
column: 38,
@@ -104,6 +112,7 @@ testRule({
},
{
code: 'a { color: pink; background: orange; background: pink; }',
+ fixed: 'a { color: pink; background: pink; }',
message: messages.rejected('background'),
line: 1,
column: 38,
@@ -112,6 +121,7 @@ testRule({
},
{
code: 'a { color: pink; { &:hover { color: orange; color: black; } } }',
+ fixed: 'a { color: pink; { &:hover { color: black; } } }',
description: 'spec nested',
message: messages.rejected('color'),
line: 1,
@@ -121,6 +131,7 @@ testRule({
},
{
code: 'a { color: pink; @media { color: orange; color: black; } }',
+ fixed: 'a { color: pink; @media { color: black; } }',
description: 'nested',
message: messages.rejected('color'),
line: 1,
@@ -130,6 +141,7 @@ testRule({
},
{
code: '@media { color: orange; .foo { color: black; color: white; } }',
+ fixed: '@media { color: orange; .foo { color: white; } }',
description: 'nested',
message: messages.rejected('color'),
line: 1,
@@ -139,6 +151,7 @@ testRule({
},
{
code: 'a { color: pink; @media { color: orange; &::before { color: black; color: white; } } }',
+ fixed: 'a { color: pink; @media { color: orange; &::before { color: white; } } }',
description: 'double nested',
message: messages.rejected('color'),
line: 1,
@@ -148,6 +161,7 @@ testRule({
},
{
code: 'a { color: pink; @media { color: orange; .foo { color: black; color: white; } } }',
+ fixed: 'a { color: pink; @media { color: orange; .foo { color: white; } } }',
description: 'double nested again',
message: messages.rejected('color'),
line: 1,
@@ -157,6 +171,7 @@ testRule({
},
{
code: 'a { -webkit-border-radius: 12px; -webkit-border-radius: 10px; }',
+ fixed: 'a { -webkit-border-radius: 10px; }',
message: messages.rejected('-webkit-border-radius'),
line: 1,
column: 34,
@@ -165,6 +180,7 @@ testRule({
},
{
code: 'a { -WEBKIT-border-radius: 12px; -webkit-BORDER-radius: 10px; }',
+ fixed: 'a { -webkit-BORDER-radius: 10px; }',
message: messages.rejected('-webkit-BORDER-radius'),
line: 1,
column: 34,
@@ -174,98 +190,10 @@ testRule({
],
});
-testRule({
- ruleName,
- config: [true],
- fix: true,
-
- reject: [
- {
- code: 'a { color: pink; color: orange }',
- fixed: 'a { color: orange }',
- message: messages.rejected('color'),
- },
- {
- code: 'a { cOlOr: pink; color: orange }',
- fixed: 'a { color: orange }',
- message: messages.rejected('color'),
- },
- {
- code: 'a { color: pink; cOlOr: orange }',
- fixed: 'a { cOlOr: orange }',
- message: messages.rejected('cOlOr'),
- },
- {
- code: 'a { cOlOr: pink; cOlOr: orange }',
- fixed: 'a { cOlOr: orange }',
- message: messages.rejected('cOlOr'),
- },
- {
- code: 'a { COLOR: pink; color: orange }',
- fixed: 'a { color: orange }',
- message: messages.rejected('color'),
- },
- {
- code: 'a { color: pink; COLOR: orange }',
- fixed: 'a { COLOR: orange }',
- message: messages.rejected('COLOR'),
- },
- {
- code: 'a { color: pink; background: orange; color: orange }',
- fixed: 'a { background: orange; color: orange }',
- message: messages.rejected('color'),
- },
- {
- code: 'a { color: pink; background: orange; background: pink; }',
- fixed: 'a { color: pink; background: pink; }',
- message: messages.rejected('background'),
- },
- {
- code: 'a { color: pink; { &:hover { color: orange; color: black; } } }',
- fixed: 'a { color: pink; { &:hover { color: black; } } }',
- description: 'spec nested',
- message: messages.rejected('color'),
- },
- {
- code: 'a { color: pink; @media { color: orange; color: black; } }',
- fixed: 'a { color: pink; @media { color: black; } }',
- description: 'nested',
- message: messages.rejected('color'),
- },
- {
- code: '@media { color: orange; .foo { color: black; color: white; } }',
- fixed: '@media { color: orange; .foo { color: white; } }',
- description: 'nested',
- message: messages.rejected('color'),
- },
- {
- code: 'a { color: pink; @media { color: orange; &::before { color: black; color: white; } } }',
- fixed: 'a { color: pink; @media { color: orange; &::before { color: white; } } }',
- description: 'double nested',
- message: messages.rejected('color'),
- },
- {
- code: 'a { color: pink; @media { color: orange; .foo { color: black; color: white; } } }',
- fixed: 'a { color: pink; @media { color: orange; .foo { color: white; } } }',
- description: 'double nested again',
- message: messages.rejected('color'),
- },
- {
- code: 'a { -webkit-border-radius: 12px; -webkit-border-radius: 10px; }',
- fixed: 'a { -webkit-border-radius: 10px; }',
- message: messages.rejected('-webkit-border-radius'),
- },
- {
- code: 'a { -WEBKIT-border-radius: 12px; -webkit-BORDER-radius: 10px; }',
- fixed: 'a { -webkit-BORDER-radius: 10px; }',
- message: messages.rejected('-webkit-BORDER-radius'),
- },
- ],
-});
-
testRule({
ruleName,
config: [true, { ignore: ['consecutive-duplicates'] }],
+ fix: true,
accept: [
{
@@ -282,31 +210,6 @@ testRule({
},
],
- reject: [
- {
- code: 'p { font-size: 16px; font-weight: 400; font-size: 1rem; }',
- message: messages.rejected('font-size'),
- },
- {
- code: 'p { display: inline-block; font-size: 16px; font-weight: 400; font-size: 1rem; }',
- message: messages.rejected('font-size'),
- },
- {
- code: 'p { font-size: 16px; font-weight: 400; font-size: 1rem; color: red; }',
- message: messages.rejected('font-size'),
- },
- {
- code: 'p { display: inline-block; font-size: 16px; font-weight: 400; font-size: 1rem; color: red; }',
- message: messages.rejected('font-size'),
- },
- ],
-});
-
-testRule({
- ruleName,
- config: [true, { ignore: ['consecutive-duplicates'] }],
- fix: true,
-
reject: [
{
code: 'p { font-size: 16px; font-weight: 400; font-size: 1rem; }',
@@ -334,26 +237,10 @@ testRule({
testRule({
ruleName,
config: [true, { ignore: ['consecutive-duplicates-with-different-values'] }],
+ fix: true,
accept: [{ code: 'p { font-size: 16px; font-size: 1rem; font-weight: 400; }' }],
- reject: [
- {
- code: 'p { font-size: 16px; font-weight: 400; font-size: 1rem; }',
- message: messages.rejected('font-size'),
- },
- {
- code: 'p { font-size: 16px; font-size: 16px; font-weight: 400; }',
- message: messages.rejected('font-size'),
- },
- ],
-});
-
-testRule({
- ruleName,
- config: [true, { ignore: ['consecutive-duplicates-with-different-values'] }],
- fix: true,
-
reject: [
{
code: 'p { font-size: 16px; font-weight: 400; font-size: 1rem; }',
@@ -371,6 +258,7 @@ testRule({
testRule({
ruleName,
config: [true, { ignore: ['consecutive-duplicates-with-same-prefixless-values'] }],
+ fix: true,
accept: [
{
@@ -387,27 +275,6 @@ testRule({
},
],
- reject: [
- {
- code: 'p { width: fit-content; height: 32px; width: -moz-fit-content; }',
- message: messages.rejected('width'),
- },
- {
- code: 'p { width: 100%; width: -moz-fit-content; height: 32px; }',
- message: messages.rejected('width'),
- },
- {
- code: 'p { width: -moz-fit-content; width: -moz-fit-content; }',
- message: messages.rejected('width'),
- },
- ],
-});
-
-testRule({
- ruleName,
- config: [true, { ignore: ['consecutive-duplicates-with-same-prefixless-values'] }],
- fix: true,
-
reject: [
{
code: 'p { width: fit-content; height: 32px; width: -moz-fit-content; }',
@@ -430,6 +297,7 @@ testRule({
testRule({
ruleName,
config: [true, { ignoreProperties: ['color'] }],
+ fix: true,
accept: [
{
@@ -443,23 +311,6 @@ testRule({
},
],
- reject: [
- {
- code: 'p { color: pink; background: orange; background: white; }',
- message: messages.rejected('background'),
- },
- {
- code: 'p { background: orange; color: pink; background: white; }',
- message: messages.rejected('background'),
- },
- ],
-});
-
-testRule({
- ruleName,
- config: [true, { ignoreProperties: ['color'] }],
- fix: true,
-
reject: [
{
code: 'p { color: pink; background: orange; background: white; }',
@@ -477,6 +328,7 @@ testRule({
testRule({
ruleName,
config: [true, { ignoreProperties: ['/background-/'] }],
+ fix: true,
accept: [
{
@@ -487,23 +339,6 @@ testRule({
},
],
- reject: [
- {
- code: 'p { color: pink; background: orange; background: white; }',
- message: messages.rejected('background'),
- },
- {
- code: 'p { background: orange; color: pink; background: white; }',
- message: messages.rejected('background'),
- },
- ],
-});
-
-testRule({
- ruleName,
- config: [true, { ignoreProperties: ['/background-/'] }],
- fix: true,
-
reject: [
{
code: 'p { color: pink; background: orange; background: white; }',
@@ -522,6 +357,7 @@ testRule({
ruleName,
config: [true],
customSyntax: 'postcss-html',
+ fix: true,
accept: [
{
@@ -538,28 +374,6 @@ testRule({
},
],
- reject: [
- {
- code: '',
- message: messages.rejected('color'),
- },
- {
- code: '',
- message: messages.rejected('background'),
- },
- {
- code: '',
- message: messages.rejected('background'),
- },
- ],
-});
-
-testRule({
- ruleName,
- config: [true],
- customSyntax: 'postcss-html',
- fix: true,
-
reject: [
{
code: '',
@@ -584,31 +398,13 @@ testRule({
ruleName,
config: [true],
customSyntax: 'postcss-css-in-js',
+ fix: true,
accept: [
{
code: "import styled from 'react-emotion'\nexport default styled.div` color: pink; `;",
},
],
- reject: [
- {
- code: "import styled from 'styled-components';\nexport default styled.div` color: pink; color: orange; `;",
- message: messages.rejected('color'),
- },
- {
- code: "import styled from 'react-emotion'\nexport default styled.div` color: pink; color: orange; `;",
- message: messages.rejected('color'),
- },
- ],
-});
-
-testRule({
- skip: true,
- ruleName,
- config: [true],
- customSyntax: 'postcss-css-in-js',
- fix: true,
-
reject: [
{
code: "import styled from 'styled-components';\nexport default styled.div` color: pink; color: orange; `;",