. /** * mod_page data generator * * @package mod_page * @category phpunit * @copyright 2012 Petr Skoda {@link http://skodak.org} * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ defined('MOODLE_INTERNAL') || die(); /** * Page module PHPUnit data generator class * * @package mod_page * @category phpunit * @copyright 2012 Petr Skoda {@link http://skodak.org} * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class mod_page_generator extends phpunit_module_generator { /** * Create new page module instance * @param array|stdClass $record * @param array $options * @return stdClass activity record with extra cmid field */ public function create_instance($record = null, array $options = null) { global $CFG; require_once("$CFG->dirroot/mod/page/locallib.php"); $this->instancecount++; $i = $this->instancecount; $record = (object)(array)$record; $options = (array)$options; if (empty($record->course)) { throw new coding_exception('module generator requires $record->course'); } if (!isset($record->name)) { $record->name = get_string('pluginname', 'page').' '.$i; } if (!isset($record->intro)) { $record->intro = 'Test page '.$i; } if (!isset($record->introformat)) { $record->introformat = FORMAT_MOODLE; } if (!isset($record->content)) { $record->content = 'Test page content'; } if (!isset($record->contentformat)) { $record->contentformat = FORMAT_MOODLE; } if (!isset($record->display)) { $record->display = RESOURCELIB_DISPLAY_AUTO; } if (isset($options['idnumber'])) { $record->cmidnumber = $options['idnumber']; } else { $record->cmidnumber = ''; } if (!isset($record->printheading)) { $record->printheading = 1; } if (!isset($record->printintro)) { $record->printintro = 0; } $record->coursemodule = $this->precreate_course_module($record->course, $options); $id = page_add_instance($record, null); return $this->post_add_instance($id, $record->coursemodule); } }