protected function setUp() { // Skip this test if ghostscript is not supported. if (!pdf::test_gs_path(false)) { $this->markTestSkipped('Ghostscript not setup'); return; } parent::setUp(); }
protected function setUp() { parent::setUp(); // Add additional default data (some real attempts and stuff). $this->setUser($this->editingteachers[0]); $this->create_instance(); $sepl = $this->create_instance(array('duedate' => time(), 'attemptreopenmethod' => ASSIGN_ATTEMPT_REOPEN_METHOD_MANUAL, 'maxattempts' => 3, 'submissiondrafts' => 1, 'seplsubmission_onlinetext_enabled' => 1)); // Add a submission. $this->setUser($this->students[0]); $submission = $sepl->get_user_submission($this->students[0]->id, true); $data = new stdClass(); $data->onlinetext_editor = array('itemid' => file_get_unused_draft_itemid(), 'text' => 'Submission text', 'format' => FORMAT_HTML); $plugin = $sepl->get_submission_plugin_by_type('onlinetext'); $plugin->save($submission, $data); // And now submit it for marking. $submission->status = ASSIGN_SUBMISSION_STATUS_SUBMITTED; $sepl->testable_update_submission($submission, $this->students[0]->id, true, false); // Mark the submission. $this->setUser($this->teachers[0]); $data = new stdClass(); $data->grade = '50.0'; $sepl->testable_apply_grade_to_user($data, $this->students[0]->id, 0); // This is required so that the submissions timemodified > the grade timemodified. sleep(2); // Edit the submission again. $this->setUser($this->students[0]); $submission = $sepl->get_user_submission($this->students[0]->id, true); $sepl->testable_update_submission($submission, $this->students[0]->id, true, false); // This is required so that the submissions timemodified > the grade timemodified. sleep(2); // Allow the student another attempt. $this->teachers[0]->ignoresesskey = true; $this->setUser($this->teachers[0]); $result = $sepl->testable_process_add_attempt($this->students[0]->id); // Add another submission. $this->setUser($this->students[0]); $submission = $sepl->get_user_submission($this->students[0]->id, true); $data = new stdClass(); $data->onlinetext_editor = array('itemid' => file_get_unused_draft_itemid(), 'text' => 'Submission text 2', 'format' => FORMAT_HTML); $plugin = $sepl->get_submission_plugin_by_type('onlinetext'); $plugin->save($submission, $data); // And now submit it for marking (again). $submission->status = ASSIGN_SUBMISSION_STATUS_SUBMITTED; $sepl->testable_update_submission($submission, $this->students[0]->id, true, false); }