public function testRequirementsBackend() { $basePath = $this->getCurrentRelativePath(); $backend = new Requirements_Backend(); $backend->javascript($basePath . '/a.js'); $this->assertTrue(count($backend->get_javascript()) == 1, "There should be only 1 file included in required javascript."); $this->assertTrue(in_array($basePath . '/a.js', $backend->get_javascript()), "a.js should be included in required javascript."); $backend->javascript($basePath . '/b.js'); $this->assertTrue(count($backend->get_javascript()) == 2, "There should be 2 files included in required javascript."); $backend->block($basePath . '/a.js'); $this->assertTrue(count($backend->get_javascript()) == 1, "There should be only 1 file included in required javascript."); $this->assertFalse(in_array($basePath . '/a.js', $backend->get_javascript()), "a.js should not be included in required javascript after it has been blocked."); $this->assertTrue(in_array($basePath . '/b.js', $backend->get_javascript()), "b.js should be included in required javascript."); $backend->css($basePath . '/a.css'); $this->assertTrue(count($backend->get_css()) == 1, "There should be only 1 file included in required css."); $this->assertArrayHasKey($basePath . '/a.css', $backend->get_css(), "a.css should be in required css."); $backend->block($basePath . '/a.css'); $this->assertTrue(count($backend->get_css()) == 0, "There should be nothing in required css after file has been blocked."); }
function testRequirementsBackend() { $backend = new Requirements_Backend(); $backend->javascript(SAPPHIRE_DIR . '/tests/forms/a.js'); $this->assertTrue(count($backend->get_javascript()) == 1, "There should be only 1 file included in required javascript."); $this->assertTrue(in_array(SAPPHIRE_DIR . '/tests/forms/a.js', $backend->get_javascript()), "/test/forms/a.js should be included in required javascript."); $backend->javascript(SAPPHIRE_DIR . '/tests/forms/b.js'); $this->assertTrue(count($backend->get_javascript()) == 2, "There should be 2 files included in required javascript."); $backend->block(SAPPHIRE_DIR . '/tests/forms/a.js'); $this->assertTrue(count($backend->get_javascript()) == 1, "There should be only 1 file included in required javascript."); $this->assertFalse(in_array(SAPPHIRE_DIR . '/tests/forms/a.js', $backend->get_javascript()), "/test/forms/a.js should not be included in required javascript after it has been blocked."); $this->assertTrue(in_array(SAPPHIRE_DIR . '/tests/forms/b.js', $backend->get_javascript()), "/test/forms/b.js should be included in required javascript."); $backend->css(SAPPHIRE_DIR . '/tests/forms/a.css'); $this->assertTrue(count($backend->get_css()) == 1, "There should be only 1 file included in required css."); $this->assertArrayHasKey(SAPPHIRE_DIR . '/tests/forms/a.css', $backend->get_css(), "/tests/forms/a.css should be in required css."); $backend->block(SAPPHIRE_DIR . '/tests/forms/a.css'); $this->assertTrue(count($backend->get_css()) == 0, "There should be nothing in required css after file has been blocked."); }
function testBlockedInRender() { $backend = new Requirements_Backend(); $backend->js('tests/phpunit/data/RequirementsTest_a.js'); $backend->js('tests/phpunit/data/RequirementsTest_a.css'); $backend->js('tests/phpunit/data/RequirementsTest_b.js'); $backend->js('tests/phpunit/data/RequirementsTest_b.css'); $backend->js('tests/phpunit/data/RequirementsTest_c.js'); $backend->js('tests/phpunit/data/RequirementsTest_c.css'); $backend->block('tests/phpunit/data/RequirementsTest_a.js'); $backend->block('tests/phpunit/data/RequirementsTest_a.css'); $backend->block('RequirementsTest_b.js'); $backend->block('RequirementsTest_b.css'); $html = $backend->render(); $this->assertNotContains('tests/phpunit/data/RequirementsTest_a.js', $html, 'RequirementsTest_a.js was blocked and should not appear in rendered HTML'); $this->assertNotContains('tests/phpunit/data/RequirementsTest_a.css', $html, 'RequirementsTest_a.css was blocked and should not appear in rendered HTML'); $this->assertNotContains('tests/phpunit/data/RequirementsTest_b.js', $html, 'RequirementsTest_b.js was blocked and should not appear in rendered HTML'); $this->assertNotContains('tests/phpunit/data/RequirementsTest_b.css', $html, 'RequirementsTest_b.css was blocked and should not appear in rendered HTML'); $this->assertContains('tests/phpunit/data/RequirementsTest_c.js', $html, 'RequirementsTest_c.js should appear in rendered HTML'); $this->assertContains('tests/phpunit/data/RequirementsTest_c.css', $html, 'RequirementsTest_c.css should appear in rendered HTML'); }