本文整理汇总了Python中question.Question.set_question_id方法的典型用法代码示例。如果您正苦于以下问题:Python Question.set_question_id方法的具体用法?Python Question.set_question_id怎么用?Python Question.set_question_id使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类question.Question
的用法示例。
在下文中一共展示了Question.set_question_id方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: save_question
# 需要导入模块: from question import Question [as 别名]
# 或者: from question.Question import set_question_id [as 别名]
def save_question(self, data, suffix=''):
"""
Adds question to question collection stored in ``QuestionController`` class.
:param data: JSON object that contains question in a format:
data = {
'id': 1,
'text': 'Text',
'alternatives': [
{
'id': '1',
'text': 'Text',
'isCorrect': 'false'
},
{
'id': '2',
'text': 'Text2',
'isCorrect': 'false'
},
...
],
'hasDifficultyLevel': 'false'
}
:param suffix:
:return: JSON object with the size of questions collection and last added question
"""
try:
q_id = int(data['id'])
q_text = data['text']
if data['hasDifficultyLevel']:
q_has_diff_lvl = True
else:
q_has_diff_lvl = False
new_question = Question(q_id, q_text, q_has_diff_lvl)
for i in range(0, len(data['alternatives'])):
# TODO: Note that the called function in CreatedAnswers throws error
# TODO: See comment in Question::add_alternative
if not new_question.add_alternative(i, data['alternatives'][i]['text'], data['alternatives'][i]['isCorrect']):
return {'status': 'Not saved', 'message': 'Alternative is not valid'}
if new_question.is_valid:
if q_id < 0:
new_question.set_question_id(len(self.questions_json_list))
self.questions_json_list.append(new_question.to_json())
else:
for i in range(0, len(self.questions_json_list)):
if self.questions_json_list[i]['id'] == q_id:
del self.questions_json_list[i]
self.questions_json_list.insert(i, new_question.to_json())
num_questions = len(self.questions_json_list)
question = self.questions_json_list[num_questions - 1]
return {'status': 'successful', 'numQuestions': num_questions, 'question': question}
else:
return{'status': 'unsuccessful', 'message': 'Question data is not valid'}
except Exception as ex:
return {'status': 'unsuccessful', 'message': str(ex)}
示例2: test_question
# 需要导入模块: from question import Question [as 别名]
# 或者: from question.Question import set_question_id [as 别名]
class test_question(unittest.TestCase):
def setUp(self):
self.q = Question(1, "some text", True)
def test_get_question_id(self):
id = self.q.get_question_id()
assert id == 1
def test_set_question_text(self):
self.q.set_question_text("test is best")
assert self.q.get_question_text() == "test is best"
def test_set_has_difficulty_level(self):
self.q.set_has_difficulty_level(True)
assert self.q.get_has_difficulty_level() == True
def test_add_alternative(self):
self.q.add_alternative(0, "An alternative", True)
self.q.add_alternative(1, "An alternative 2", False)
alternatives = self.q.get_alternatives();
assert len(alternatives) == 2
def test_add_alternative_negative(self):
self.q.add_alternative("A", "An alternative", True)
alternatives = self.q.get_alternatives()
assert len(alternatives) == 0
def test_is_valid(self):
self.q.set_question_text("test is best")
self.q.add_alternative(0, "An alternative", True)
self.q.add_alternative(1, "An alternative 2", False)
valid = self.q.is_valid()
assert valid == True
def test_is_valid_id_negative(self):
self.q.set_question_id(0)
valid = self.q.is_valid()
assert valid == False
def test_is_valid_text_negative(self):
self.q.set_question_id(1)
self.q.set_question_text("")
valid = self.q.is_valid()
assert valid == False
def test_is_valid_difficulty_level_negative(self):
self.q.set_question_id(1)
self.q.set_question_text("Test question")
self.q.set_has_difficulty_level(None)
valid = self.q.is_valid()
assert valid == False
def test_is_valid_alternatives_negative(self):
self.q.set_question_id(1)
self.q.set_question_text("Test question")
self.q.set_has_difficulty_level(True)
valid = self.q.is_valid()
assert valid == False
def test_to_json(self):
self.q.set_question_text("test is best")
self.q.add_alternative(0, "An alternative", True)
json = self.q.to_json()
assert "id" in json
assert "question" in json
assert "alternatives" in json
assert "has_difficulty_level" in json
assert "id" in json["alternatives"][0]
assert "text" in json["alternatives"][0]
assert "isCorrect" in json["alternatives"][0]
assert json["id"] == 1
assert json["question"] == "test is best"
assert json["has_difficulty_level"] == True
assert json["alternatives"][0]["id"] == 0
assert json["alternatives"][0]["text"] == "An alternative"
assert json["alternatives"][0]["isCorrect"] == True