public function test_upgrade_offline_setaskment()
 {
     global $DB, $CFG;
     $commentconfig = false;
     if (!empty($CFG->usecomments)) {
         $commentconfig = $CFG->usecomments;
     }
     $CFG->usecomments = false;
     $this->setUser($this->editingteachers[0]);
     $generator = $this->getDataGenerator()->get_plugin_generator('mod_setaskment');
     $params = array('course' => $this->course->id, 'setaskmenttype' => 'offline');
     $setaskment = $generator->create_instance($params);
     $this->setAdminUser();
     $log = '';
     $upgrader = new setask_upgrade_manager();
     $this->assertTrue($upgrader->upgrade_setaskment($setaskment->id, $log));
     $record = $DB->get_record('setask', array('course' => $this->course->id));
     $cm = get_coursemodule_from_instance('setask', $record->id);
     $context = context_module::instance($cm->id);
     $setask = new setask($context, $cm, $this->course);
     $plugin = $setask->get_submission_plugin_by_type('onlinetext');
     $this->assertEmpty($plugin->is_enabled());
     $plugin = $setask->get_submission_plugin_by_type('comments');
     $this->assertEmpty($plugin->is_enabled());
     $plugin = $setask->get_submission_plugin_by_type('file');
     $this->assertEmpty($plugin->is_enabled());
     $plugin = $setask->get_feedback_plugin_by_type('comments');
     $this->assertNotEmpty($plugin->is_enabled());
     $plugin = $setask->get_feedback_plugin_by_type('file');
     $this->assertEmpty($plugin->is_enabled());
     $plugin = $setask->get_feedback_plugin_by_type('offline');
     $this->assertEmpty($plugin->is_enabled());
     $CFG->usecomments = $commentconfig;
     course_delete_module($cm->id);
 }