MDL-61132 Questions: Unit tests compatibility

Modified unit tests to adapt with "Top" categories.
This commit is contained in:
Shamim Rezaie
2018-02-05 11:58:58 +11:00
parent f86f8c85c1
commit 869320c7f4
3 changed files with 13 additions and 5 deletions
+3 -2
View File
@@ -249,8 +249,8 @@ class core_questionlib_testcase extends advanced_testcase {
$rc->execute_plan();
// Get the created question category.
$restoredcategory = $DB->get_record('question_categories', array('contextid' => context_course::instance($course2->id)->id),
'*', MUST_EXIST);
$restoredcategory = $DB->get_record_select('question_categories', 'contextid = ? AND parent <> 0',
array(context_course::instance($course2->id)->id), '*', MUST_EXIST);
// Check that there are two questions in the restored to course's context.
$this->assertEquals(2, $DB->count_records('question', array('category' => $restoredcategory->id)));
@@ -334,6 +334,7 @@ class core_questionlib_testcase extends advanced_testcase {
$this->assertEquals(0, $DB->count_records('question', $criteria));
// Test that the feedback works.
$expected[] = array('top', get_string('unusedcategorydeleted', 'question'));
$expected[] = array($qcat->name, get_string('unusedcategorydeleted', 'question'));
$this->assertEquals($expected, $result);
}
+7 -2
View File
@@ -47,15 +47,20 @@ class core_question_generator extends component_generator_base {
$defaults = array(
'name' => 'Test question category ' . $this->categorycount,
'contextid' => context_system::instance()->id,
'info' => '',
'infoformat' => FORMAT_HTML,
'stamp' => make_unique_id_code(),
'parent' => 0,
'sortorder' => 999,
);
$record = $this->datagenerator->combine_defaults_and_record($defaults, $record);
if (!isset($record['contextid'])) {
$record['contextid'] = context_system::instance()->id;
}
if (!isset($record['parent'])) {
$record['parent'] = question_get_top_category($record['contextid'], true)->id;
}
$record['id'] = $DB->insert_record('question_categories', $record);
return (object) $record;
}
+3 -1
View File
@@ -42,7 +42,9 @@ class core_question_generator_testcase extends advanced_testcase {
$count = $DB->count_records('question_categories');
$cat = $generator->create_question_category();
$this->assertEquals($count + 1, $DB->count_records('question_categories'));
$count += $count ? 1 : 2; // Calling $generator->create_question_category() for the first time
// creates a Top category as well.
$this->assertEquals($count, $DB->count_records('question_categories'));
$cat = $generator->create_question_category(array(
'name' => 'My category', 'sortorder' => 1));