ResponseTest.php in Minify Source HTML 8
File
tests/src/Functional/ResponseTest.php
View source
<?php
namespace Drupal\Tests\minifyhtml\Functional;
use Drupal\Core\Url;
use Drupal\Tests\BrowserTestBase;
class ResponseTest extends BrowserTestBase {
protected $defaultTheme = 'stark';
protected static $modules = [
'minifyhtml_test',
];
public function dataProvider() {
$data = [];
$expected_output = "<html><head><title>Test HTML</title></head><body><textarea cols=\"55\" rows=\"31\">\n";
$expected_output .= "Content in here will not matter.\n";
$expected_output .= "Even multiline content.\n";
$expected_output .= "</textarea></body></html>";
$case = 'textarea_replacement';
$data[$case] = [
$case,
$expected_output,
];
$expected_output = "<html><head><title>Test HTML</title></head><body><pre>\n";
$expected_output .= " Indented content.\n";
$expected_output .= " Weirdly Indented content.\n";
$expected_output .= "Non-indented content.\n";
$expected_output .= "</pre></body></html>";
$case = 'pre_replacement';
$data[$case] = [
$case,
$expected_output,
];
$case = 'iframe_replacement';
$data[$case] = [
$case,
"<html><head><title>Test HTML</title></head><body><iframe src=\"\" width=\"100\" height=\"100\" ></iframe></body></html>",
];
$expected_output = "<html><head><title>Test HTML</title></head><body><script>\n";
$expected_output .= "alert('test');\n";
$expected_output .= "</script></body></html>";
$case = 'script_replacement';
$data[$case] = [
$case,
$expected_output,
];
$expected_output = "<html><head><title>Test HTML</title></head><body><style>\n";
$expected_output .= "body { color: #fff; }\n";
$expected_output .= "</style></body></html>";
$case = 'style_replacement';
$data[$case] = [
$case,
$expected_output,
];
$case = 'comment_stripping';
$data[$case] = [
$case,
"<html><head><title>Test HTML</title></head><body></body></html>",
];
return $data;
}
public function testMinifyHtml($case, $expected_output) {
$this
->drupalGet(Url::fromRoute('minifyhtml_test.case', [
'case' => $case,
]));
$actual_output = $this
->getSession()
->getPage()
->getContent();
$this
->assertEquals($expected_output, $actual_output, 'Minified source not matches expected output.');
$this
->assertSame($expected_output, $actual_output, 'Minified source not matches expected output.');
}
}