def test_replace_skill_id_for_all_questions(self): question_id_2 = question_services.get_new_question_id() self.save_new_question(question_id_2, self.editor_id, self._create_valid_question_data('ABC'), ['skill_1']) question_id_3 = question_services.get_new_question_id() self.save_new_question(question_id_3, self.editor_id, self._create_valid_question_data('ABC'), ['skill_2']) question_services.create_new_question_skill_link( self.editor_id, self.question_id, 'skill_1', 0.5) question_services.create_new_question_skill_link( self.editor_id, question_id_2, 'skill_1', 0.3) question_services.create_new_question_skill_link( self.editor_id, question_id_3, 'skill_2', 0.9) question_skill_links = ( question_services.get_question_skill_links_of_skill( 'skill_1', 'Skill Description 1')) self.assertEqual(len(question_skill_links), 2) question_ids = [ question_skill.question_id for question_skill in question_skill_links ] self.assertItemsEqual(question_ids, [self.question_id, question_id_2]) for question_skill in question_skill_links: if question_skill.question_id == self.question_id: self.assertEqual(question_skill.skill_difficulty, 0.5) question_services.replace_skill_id_for_all_questions( 'skill_1', 'Description 1', 'skill_3') question_skill_links = ( question_services.get_question_skill_links_of_skill( 'skill_1', 'Description 1')) self.assertEqual(len(question_skill_links), 0) question_skill_links = ( question_services.get_question_skill_links_of_skill( 'skill_3', 'Skill Description 3')) question_ids = [ question_skill.question_id for question_skill in question_skill_links ] self.assertItemsEqual(question_ids, [self.question_id, question_id_2]) for question_skill in question_skill_links: if question_skill.question_id == self.question_id: self.assertEqual(question_skill.skill_difficulty, 0.5) questions = question_services.get_questions_by_ids( [self.question_id, question_id_2, question_id_3]) for question in questions: if question.id in ([self.question_id, question_id_2]): self.assertItemsEqual(question.linked_skill_ids, ['skill_3']) else: self.assertItemsEqual(question.linked_skill_ids, ['skill_2'])
def test_get_questions_by_ids(self): question_id_2 = question_services.get_new_question_id() self.save_new_question(question_id_2, self.editor_id, self._create_valid_question_data('DEF')) questions = question_services.get_questions_by_ids( [self.question_id, 'invalid_question_id', question_id_2]) self.assertEqual(len(questions), 3) self.assertEqual(questions[0].id, self.question_id) self.assertIsNone(questions[1]) self.assertEqual(questions[2].id, question_id_2)
def test_get_questions_by_ids(self): question = question_domain.Question( 'dummy', self._create_valid_question_data('ABC'), 1, 'en') question1_id = question_services.add_question(self.owner_id, question) question = question_domain.Question( 'dummy2', self._create_valid_question_data('ABC'), 1, 'en') question2_id = question_services.add_question(self.owner_id, question) questions = question_services.get_questions_by_ids( [question1_id, question2_id]) self.assertEqual(len(questions), 2) self.assertEqual(questions[0].question_id, question1_id) self.assertEqual(questions[1].question_id, question2_id)
def test_get_questions_by_ids(self): question = question_domain.Question( 'dummy', 'A Question', exp_domain.State.create_default_state('ABC').to_dict(), 1, 'en') question1_id = question_services.add_question(self.owner_id, question) question = question_domain.Question( 'dummy2', 'A Question2', exp_domain.State.create_default_state('ABC').to_dict(), 1, 'en') question2_id = question_services.add_question(self.owner_id, question) questions = question_services.get_questions_by_ids( [question1_id, question2_id]) self.assertEqual(len(questions), 2) self.assertEqual(questions[0].title, 'A Question') self.assertEqual(questions[1].title, 'A Question2')