Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
129 changes: 69 additions & 60 deletions tests/OutputFormatTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ protected function setUp(): void
public function plain(): void
{
self::assertSame(
'.main, .test {font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;background: white;}
@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
".main, .test {font: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;background: white;}\n"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's debatable whether such a string should be single-quoted, with "\n" concatenated. Either way is fine I think.

. '@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
$this->document->render()
);
}
Expand Down Expand Up @@ -96,8 +96,8 @@ public function spaceAfterListArgumentSeparator(): void
public function spaceAfterListArgumentSeparatorComplex(): void
{
self::assertSame(
'.main, .test {font: italic normal bold 16px/1.2 "Helvetica", Verdana, sans-serif;background: white;}'
. "\n@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}",
".main, .test {font: italic normal bold 16px/1.2 \"Helvetica\",\tVerdana,\tsans-serif;background: white;}\n"
. '@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
$this->document->render(
OutputFormat::create()
->setSpaceAfterListArgumentSeparator(' ')
Expand All @@ -116,9 +116,9 @@ public function spaceAfterListArgumentSeparatorComplex(): void
public function spaceAfterSelectorSeparator(): void
{
self::assertSame(
'.main,
.test {font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;background: white;}
@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
".main,\n"
. ".test {font: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;background: white;}\n"
. '@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
$this->document->render(OutputFormat::create()->setSpaceAfterSelectorSeparator("\n"))
);
}
Expand All @@ -129,8 +129,8 @@ public function spaceAfterSelectorSeparator(): void
public function stringQuotingType(): void
{
self::assertSame(
'.main, .test {font: italic normal bold 16px/1.2 \'Helvetica\',Verdana,sans-serif;background: white;}
@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
".main, .test {font: italic normal bold 16px/1.2 'Helvetica',Verdana,sans-serif;background: white;}\n"
. '@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
$this->document->render(OutputFormat::create()->setStringQuotingType("'"))
);
}
Expand All @@ -141,8 +141,8 @@ public function stringQuotingType(): void
public function rGBHashNotation(): void
{
self::assertSame(
'.main, .test {font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;background: white;}
@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: rgb(255,255,255);}}',
".main, .test {font: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;background: white;}\n"
. '@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: rgb(255,255,255);}}',
$this->document->render(OutputFormat::create()->setRGBHashNotation(false))
);
}
Expand All @@ -153,8 +153,8 @@ public function rGBHashNotation(): void
public function semicolonAfterLastRule(): void
{
self::assertSame(
'.main, .test {font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;background: white}
@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff}}',
".main, .test {font: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;background: white}\n"
. '@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff}}',
$this->document->render(OutputFormat::create()->setSemicolonAfterLastRule(false))
);
}
Expand All @@ -165,8 +165,8 @@ public function semicolonAfterLastRule(): void
public function spaceAfterRuleName(): void
{
self::assertSame(
'.main, .test {font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;background: white;}
@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
".main, .test {font:\titalic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;background:\twhite;}\n"
. "@media screen {.main {background-size:\t100% 100%;font-size:\t1.3em;background-color:\t#fff;}}",
$this->document->render(OutputFormat::create()->setSpaceAfterRuleName("\t"))
);
}
Expand All @@ -181,15 +181,18 @@ public function spaceRules(): void
->setSpaceBetweenRules("\n")
->setSpaceAfterRules("\n");

self::assertSame('.main, .test {
font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;
background: white;
}
@media screen {.main {
background-size: 100% 100%;
font-size: 1.3em;
background-color: #fff;
}}', $this->document->render($outputFormat));
self::assertSame(
".main, .test {\n"
. "\tfont: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;\n"
. "\tbackground: white;\n"
. "}\n"
. "@media screen {.main {\n"
. "\t\tbackground-size: 100% 100%;\n"
. "\t\tfont-size: 1.3em;\n"
. "\t\tbackground-color: #fff;\n"
. "\t}}",
$this->document->render($outputFormat)
);
}

/**
Expand All @@ -202,12 +205,14 @@ public function spaceBlocks(): void
->setSpaceBetweenBlocks("\n")
->setSpaceAfterBlocks("\n");

self::assertSame('
.main, .test {font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;background: white;}
@media screen {
.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}
}
', $this->document->render($outputFormat));
self::assertSame(
"\n"
. ".main, .test {font: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;background: white;}\n"
. "@media screen {\n"
. "\t.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}\n"
. "}\n",
$this->document->render($outputFormat)
);
}

/**
Expand All @@ -223,19 +228,21 @@ public function spaceBoth(): void
->setSpaceBetweenBlocks("\n")
->setSpaceAfterBlocks("\n");

self::assertSame('
.main, .test {
font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;
background: white;
}
@media screen {
.main {
background-size: 100% 100%;
font-size: 1.3em;
background-color: #fff;
}
}
', $this->document->render($outputFormat));
self::assertSame(
"\n"
. ".main, .test {\n"
. "\tfont: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;\n"
. "\tbackground: white;\n"
. "}\n"
. "@media screen {\n"
. "\t.main {\n"
. "\t\tbackground-size: 100% 100%;\n"
. "\t\tfont-size: 1.3em;\n"
. "\t\tbackground-color: #fff;\n"
. "\t}\n"
. "}\n",
$this->document->render($outputFormat)
);
}

/**
Expand Down Expand Up @@ -267,19 +274,21 @@ public function indentation(): void
->setSpaceAfterBlocks("\n")
->setIndentation('');

self::assertSame('
.main, .test {
font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;
background: white;
}
@media screen {
.main {
background-size: 100% 100%;
font-size: 1.3em;
background-color: #fff;
}
}
', $this->document->render($outputFormat));
self::assertSame(
"\n"
. ".main, .test {\n"
. "font: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;\n"
. "background: white;\n"
. "}\n"
. "@media screen {\n"
. ".main {\n"
. "background-size: 100% 100%;\n"
. "font-size: 1.3em;\n"
. "background-color: #fff;\n"
. "}\n"
. "}\n",
$this->document->render($outputFormat)
);
}

/**
Expand All @@ -291,8 +300,8 @@ public function spaceBeforeBraces(): void
->setSpaceBeforeOpeningBrace('');

self::assertSame(
'.main, .test{font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;background: white;}
@media screen{.main{background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
".main, .test{font: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;background: white;}\n"
. '@media screen{.main{background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
$this->document->render($outputFormat)
);
}
Expand All @@ -310,8 +319,8 @@ public function ignoreExceptionsOff(): void
$firstDeclarationBlock = $declarationBlocks[0];
$firstDeclarationBlock->removeSelector('.main');
self::assertSame(
'.test {font: italic normal bold 16px/1.2 "Helvetica",Verdana,sans-serif;background: white;}
@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
".test {font: italic normal bold 16px/1.2 \"Helvetica\",Verdana,sans-serif;background: white;}\n"
. '@media screen {.main {background-size: 100% 100%;font-size: 1.3em;background-color: #fff;}}',
$this->document->render($outputFormat)
);
$firstDeclarationBlock->removeSelector('.test');
Expand Down