def modifyQuestion(fs): """ modify fs to be properly consumed by Category() """ # check for the existence of subcategory q = None if fs['id'] in ["deleteQuestion", 'editQuestion']: """ deactivates Category """ q = Question(fs).updateQuestion() elif fs['id'] == "createQuestion": """ Creates new Category """ q = Question(fs).newQuestion() returnJson(q)
def test_null_question_title(db_handle): """ Tests whether a question can be created without a title or not. """ questionnaire = _get_questionnaire() question1 = Question(questionnaire=questionnaire, description="this is a non-title test") question2 = Question(title="test", description="this is a non-questionnaire test") db.session.add(questionnaire) db.session.add(question1) db.session.add(question2) with pytest.raises(exc.IntegrityError): db.session.commit()
def _populate_db(): """ Pre-populate database with 2 questionnaires.One of the questionnaire has 3 questions and 1 answer for each question. The other questionnaire has no question. """ _questionnaire = Questionnaire( title="test-questionnaire-1", description="test-questionnaire" ) db.session.add(_questionnaire) db.session.add(Questionnaire( title="test-questionnaire-2", description="test-questionnaire" )) for i in range(1, 4): q = Question( title="test-question-{}".format(i), description="test-question", questionnaire=_questionnaire ) a = Answer( userName="******".format(i), content="test-answer", question=q ) db.session.add(q) db.session.add(a) db.session.commit()
def create_question(_title, _questionnaire, _description=""): """ Create a question with title and description. Titles are mandatory while descriptions are optional. It's also mandatory to put it into a specific questionnaire. """ if (_description != ""): question = Question(title=_title, description=_description, questionnaire=_questionnaire) else: question = Question(title=_title, questionnaire=_questionnaire) db.session.add(question) print("A new question is created.") print("Title: ", _title) print("Description: ", _description) print("--------------------") return question
def _get_question(_questionnaire): """ An example of question in a specific questionnaire. """ question = Question( title="Choose a date", description= "Between 1st of March and 4th of March, please tell us the dates you are available.", questionnaire=_questionnaire) return question
def add_questions(question_file): with open(question_file) as f: for line in f: line = line.split(',') number = int(line[0]) html = line[1].strip() lesson_title = line[-1].strip() lesson = Lesson.query.filter(Lesson.title == lesson_title).first() question = Question(number=number, html=html, lesson=lesson) db.session.add(question) db.session.commit()
def test_question(self): q = Question(question="ABCDEFG", label="ABC", a="A", b="B", c="C", d="D", answer=3) expected = "ABCDEFG" assert q.question == expected
def publish_question(query, user_id, chat_id, msg_id): question = Question.query.filter_by(text=query).filter_by( user_fk=user_id).first() if not question: question = Question(text=query, chat_id=chat_id, user_fk=user_id, msg_id=msg_id) db.session.add(question) db.session.commit() return question.id
def getCategoryQuestionsByID(fs): returnObj = {} q = Question(fs).getQuestionsByCat() try: if 'error' not in q[0].keys(): returnObj['questions'] = q else: returnObj = q except KeyError as e: returnObj = { 'error': { 'error': 'None', 'msg': 'No question are available for this category' } } returnJson(returnObj)
import csv from app import db, Question, Answer with open("data.csv", 'rU') as csvfile: reader = csv.DictReader(csvfile) for row in reader: question = row['Question'] choices = row['Choices'] answer = row['Answer'] qid = row['QID'] q = Question(question, choices, qid) db.session.add_all([q]) db.session.commit() a = Answer(answer, qid) db.session.add_all([a]) db.session.commit()
def test_try_save_question2db(client): nq = Question(file_name = 'test_file_name', file_url = '2', description = '3', cell_code = '4', cell_output = '5' ) db.session.add(nq) db.session.commit() assert nq.id > 0 assert nq.__repr__() == 'description 3'
User.drop_collection() Question.drop_collection() Attempt.drop_collection() # create users u1 = User(name="Joshua", email="*****@*****.**", password="******") u1.save() u2 = User(name="Isaac", email="*****@*****.**", password="******") u2.save() u3 = User(name="Cow", email="*****@*****.**", password="******") u3.save() u4 = User(name="moo", email="*****@*****.**", password="******") u4.save() # # create questions q1 = Question(text="Joshua went the the market to buy ___head biscuits", options=["went", "arrow", "sheep", "cow"], answer=4, credit="oxcow university") q1.save() q2 = Question(text="Joshua and Isaac were eating ___head biscuits ", options=["cow", "arrow", "went", "sheep"], answer=1, credit="cowbridge university") q2.save() q3 = Question(text="Isaac exclamed that ___head biscuits were his favourite", options=["went", "arrow", "cow", "sheep"], answer=3, credit="cowbridge university") q3.save() q4 = Question(text="Cows are the key to ___head biscuits ", options=["went", "arrow", "cow", "sheep"], answer=3,