本文整理汇总了Python中oasis.lib.DB.get_qt_version方法的典型用法代码示例。如果您正苦于以下问题:Python DB.get_qt_version方法的具体用法?Python DB.get_qt_version怎么用?Python DB.get_qt_version使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类oasis.lib.DB
的用法示例。
在下文中一共展示了DB.get_qt_version方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_export_questions
# 需要导入模块: from oasis.lib import DB [as 别名]
# 或者: from oasis.lib.DB import get_qt_version [as 别名]
def test_export_questions(self):
""" Make some questions and export them."""
course_id = Courses.create("TEST106", "Test Question Export", 1, 1)
self.assertGreater(course_id, 0)
topic1_id = Topics.create(course_id, "TESTEXPORT1", 1, 2)
self.assertGreater(topic1_id, 0)
qt1_id = DB.create_qt(1, "TESTQ1", "Test question 1", 0, 5.0, 1, topic_id=topic1_id)
self.assertIsNotNone(qt1_id)
ver = DB.get_qt_version(qt1_id)
self.assertGreater(ver, 0)
data = "2\n|1\n|2\n"
qvars = [{'A1': "2"}, {'A1': "3"}]
for row in range(0, len(qvars)):
DB.add_qt_variation(qt1_id, row + 1, qvars[row], ver)
DB.create_qt_att(qt1_id, "datfile.dat", "text/plain", data, ver)
DB.create_qt_att(qt1_id, "qtemplate.html", "text/html", "What is <VAL A1>? <ANSWER 1>", ver)
qt2_id = DB.create_qt(1, "TESTQ2", "Test question 2", 0, 5.0, 1, topic_id=topic1_id)
self.assertIsNotNone(qt2_id)
ver = DB.get_qt_version(qt2_id)
self.assertGreater(ver, 0)
data = "2\n|6\n|7\n"
qvars = [{'A1': "6"}, {'A1': "7"}]
for row in range(0, len(qvars)):
DB.add_qt_variation(qt2_id, row + 1, qvars[row], ver)
DB.create_qt_att(qt2_id, "datfile.dat", "text/plain", data, ver)
DB.create_qt_att(qt2_id, "qtemplate.html", "text/html", "Question 2: What is <VAL A1>? <ANSWER 1>", ver)
qt3_id = DB.create_qt(1, "TESTQ3", "Test question 3", 0, 5.0, 1, topic_id=topic1_id)
self.assertIsNotNone(qt3_id)
ver = DB.get_qt_version(qt3_id)
self.assertGreater(ver, 0)
data = "3\n|9\n|10\n|11\n"
qvars = [{'A1': "9"}, {'A1': "10"}, {'A1': "11"}]
for row in range(0, len(qvars)):
DB.add_qt_variation(qt3_id, row + 1, qvars[row], ver)
DB.create_qt_att(qt3_id, "datfile.dat", "text/plain", data, ver)
DB.create_qt_att(qt3_id, "qtemplate.html", "text/html", "Question 3: What is <VAL A1>? <ANSWER 1>", ver)
data = External.topic_to_zip(topic1_id)
f = open("%s" % self.test_question_fname, mode='w')
f.write(data)
f.close()
示例2: test_do_question
# 需要导入模块: from oasis.lib import DB [as 别名]
# 或者: from oasis.lib.DB import get_qt_version [as 别名]
def test_do_question(self):
""" Do a question"""
course_id = Courses.create("TEST102", "Test question logic", 1, 1)
self.assertGreater(course_id, 0)
topic1_id = Topics.create(course_id, "TESTQUESTIONS1", 1, 2)
self.assertGreater(topic1_id, 0)
qt1_id = DB.create_qt(1, "TESTQ9", "Test question 9", 0, 5.0, 1, topic_id=topic1_id)
self.assertIsNotNone(qt1_id)
ver = DB.get_qt_version(qt1_id)
self.assertGreater(ver, 0)
data = "2\n|1\n|2\n"
qvars = [{'A1': "2"}, {'A1': "3"}]
for row in range(0, len(qvars)):
DB.add_qt_variation(qt1_id, row + 1, qvars[row], ver)
DB.create_qt_att(qt1_id, "datfile.dat", "text/plain", data , ver)
DB.create_qt_att(qt1_id, "qtemplate.html", "text/html", "What is <VAL A1>? <ANSWER 1>", ver)
q_id = DB.get_q_by_qt_student(qt1_id, 1)
self.assertFalse(q_id) # Not generated yet
q_id = General.gen_q(qt1_id, 1)
self.assertGreater(q_id, 0)
q_id = DB.get_q_by_qt_student(qt1_id, 1)
self.assertTrue(qt1_id) # Better be there now
DB.update_qt_maxscore(qt1_id, 7.0)
score = DB.get_qt_maxscore(qt1_id)
self.assertEqual(score, 7.0)
DB.set_q_viewtime(q_id)
self.assertIsNotNone(DB.get_q_viewtime(q_id))
示例3: create_exported_questions
# 需要导入模块: from oasis.lib import DB [as 别名]
# 或者: from oasis.lib.DB import get_qt_version [as 别名]
def create_exported_questions(fname):
""" Make some questions and export them."""
# Not really related to assessment, but can use this to create some questions to import and use multiple times
course_id = Courses.create("TEST106", "Test Question Export", 1, 1)
topic1_id = Topics.create(course_id, "TESTEXPORT1", 1, 2)
qt1_id = DB.create_qt(1, "TESTQ1", "Test question 1", 0, 5.0, 1, topic_id=topic1_id)
ver = DB.get_qt_version(qt1_id)
data = "2\n|1\n|2\n"
qvars = [{'A1': "2"}, {'A1': "3"}]
for row in range(0, len(qvars)):
DB.add_qt_variation(qt1_id, row + 1, qvars[row], ver)
DB.create_qt_att(qt1_id, "datfile.dat", "text/plain", data, ver)
DB.create_qt_att(qt1_id, "qtemplate.html", "text/html", "What is <VAL A1>? <ANSWER 1>", ver)
qt2_id = DB.create_qt(1, "TESTQ2", "Test question 2", 0, 5.0, 1, topic_id=topic1_id)
ver = DB.get_qt_version(qt2_id)
data = "2\n|6\n|7\n"
qvars = [{'A1': "6"}, {'A1': "7"}]
for row in range(0, len(qvars)):
DB.add_qt_variation(qt2_id, row + 1, qvars[row], ver)
DB.create_qt_att(qt2_id, "datfile.dat", "text/plain", data, ver)
DB.create_qt_att(qt2_id, "qtemplate.html", "text/html", "Question 2: What is <VAL A1>? <ANSWER 1>", ver)
qt3_id = DB.create_qt(1, "TESTQ3", "Test question 3", 0, 5.0, 1, topic_id=topic1_id)
ver = DB.get_qt_version(qt3_id)
data = "3\n|9\n|10\n|11\n"
qvars = [{'A1': "9"}, {'A1': "10"}, {'A1': "11"}]
for row in range(0, len(qvars)):
DB.add_qt_variation(qt3_id, row + 1, qvars[row], ver)
DB.create_qt_att(qt3_id, "datfile.dat", "text/plain", data, ver)
DB.create_qt_att(qt3_id, "qtemplate.html", "text/html", "Question 3: What is <VAL A1>? <ANSWER 1>", ver)
data = External.topic_to_zip(topic1_id)
f = open("%s" % fname, mode='w')
f.write(data)
f.close()
示例4: gen_q
# 需要导入模块: from oasis.lib import DB [as 别名]
# 或者: from oasis.lib.DB import get_qt_version [as 别名]
def gen_q(qtid, student=0, exam=0, position=0):
""" Given a qtemplate, will generate a question instance.
If student and/or exam is supplied it will be assigned appropriately.
If exam is supplied, position must also be supplied.
Will return the ID of the created instance.
"""
# Pick a variation randomly
version = DB.get_qt_version(qtid)
numvars = DB.get_qt_num_variations(qtid, version)
if numvars > 0:
variation = random.randint(1, numvars)
else:
L.warn("No question variations (qtid=%d)" % qtid)
return False
return gen_q_from_var(qtid, student, exam, position, version, variation)
示例5: gen_q
# 需要导入模块: from oasis.lib import DB [as 别名]
# 或者: from oasis.lib.DB import get_qt_version [as 别名]
def gen_q(qtid, student=0, exam=0, position=0, variation=None):
""" Given a qtemplate, will generate a question instance.
If student and/or exam is supplied it will be assigned appropriately.
If exam is supplied, position must also be supplied.
Will return the ID of the created instance.
"""
# Pick a variation randomly if not supplied
version = DB.get_qt_version(qtid)
numvars = DB.get_qt_num_variations(qtid, version)
if variation is None and numvars > 0:
variation = random.randint(1, numvars)
if numvars == 0:
L.warn("No question variations (qtid=%d)" % qtid)
Audit.audit(3, student, qtid, "General", "Failed to generate question %s for %s, exam %s" % (qtid, student, exam))
return False
q_id = gen_q_from_var(qtid, student, exam, position, version, variation)
if not q_id:
Audit.audit(3, student, qtid, "General", "Failed to generate instance of %s for %s, exam %s" % (qtid, student, exam))
return q_id