Source of file DeferBackendTest.php
Size: 1,322 Bytes - Last Modified: 2021-12-23T10:00:24+00:00
/var/www/docs.ssmods.com/process/src/tests/DeferBackendTest.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | <?php namespace LeKoala\DeferBackend\Test; use LeKoala\DeferBackend\CspProvider; use SilverStripe\Dev\SapphireTest; use LeKoala\DeferBackend\DeferBackend; use SilverStripe\Control\HTTPResponse; class DeferBackendTest extends SapphireTest { public function testWriteToHeader() { $backend = new DeferBackend; $this->assertFalse($backend->writeJavascriptToBody); } public function testNonce() { $this->assertNotEmpty(CspProvider::getCspNonce()); } public function testProvideTemplate() { $this->assertContains("getCspNonce", CspProvider::get_template_global_variables()); } public function testAddSecurityHeaders() { $res = new HTTPResponse(); CspProvider::addSecurityHeaders($res); $headers = array_keys($res->getHeaders()); $this->assertContains('referrer-policy', $headers, "Header not found in : " . implode(", ", $headers)); } public function testWrapScripts() { $backend = new DeferBackend; $backend->customScript("var test = 'test';"); $sampleHTML = <<<HTML <html> <head></head> <body></body> </html> HTML; $sampleHTML = $backend->includeInHTML($sampleHTML); $this->assertContains("window.addEventListener('DOMContentLoaded'", $sampleHTML); } } |