. /** * Tests for restore_structure_parser_processor class. * * @package core_backup * @category test * @copyright 2017 Dmitrii Metelkin (dmitriim@catalyst-au.net) * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ defined('MOODLE_INTERNAL') || die(); global $CFG; require_once($CFG->dirroot . '/backup/util/includes/backup_includes.php'); require_once($CFG->dirroot . '/backup/util/helper/restore_structure_parser_processor.class.php'); /** * Tests for restore_structure_parser_processor class. * * @package core_backup * @copyright 2017 Dmitrii Metelkin (dmitriim@catalyst-au.net) * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class restore_structure_parser_processor_test extends advanced_testcase { /** * Initial set up. */ public function setUp() { parent::setUp(); $this->resetAfterTest(true); } /** * Data provider for ::test_process_cdata. * * @return array */ public function process_cdata_data_provider() { return array( array(null, null, true), array("$@NULL@$", null, true), array("$@NULL@$ ", "$@NULL@$ ", true), array(1, 1, true), array(" ", " ", true), array("1", "1", true), array("$@FILEPHP@$1.jpg", "$@FILEPHP@$1.jpg", true), array( "http://test.test/$@SLASH@$", "http://test.test/$@SLASH@$", true ), array( "Image", "Image", true ), array( "Image", "Image", true ), array( "Image", "Image", true ), array( "Image", "Image", false ), array( "Image", "Image", false ), array( "Image", "Image", false ), array( "Image", "Image", true ), array( "Image", "Image", false ), array( "", "", true ), ); } /** * Test that restore_structure_parser_processor replaces $@FILEPHP@$ to correct file php links. * * @dataProvider process_cdata_data_provider * @param string $content Testing content. * @param string $expected Expected result. * @param bool $slasharguments A value for $CFG->slasharguments setting. */ public function test_process_cdata($content, $expected, $slasharguments) { global $CFG; $CFG->slasharguments = $slasharguments; $CFG->wwwroot = 'http://test.test'; $processor = new restore_structure_parser_processor(1, 1); $this->assertEquals($expected, $processor->process_cdata($content)); } }