def test_test_exercise_pass(conn, sct): result = {'id': [1], 'name': ['greg']} sct_payload = te(sct=sct, student_code="SELECT * FROM company", solution_code="SELECT * FROM company", pre_exercise_code="", student_conn=conn, solution_conn=None, student_result=result, solution_result=result, ex_type="NormalExercise", error=[]) assert sct_payload.get('correct') is True
def test_test_exercise_fail(conn, sct): sol_result = {'id': [1], 'name': ['greg']} stu_result = {'id2': [1, 2], 'name2': ['greg', 'fred'], 'c': [1, 2]} sct_payload = te(sct=sct, student_code="SELECT * FROM company", solution_code="SELECT id FROM company", pre_exercise_code="", student_conn=conn, solution_conn=None, student_result=stu_result, solution_result=sol_result, ex_type="NormalExercise", error=[]) assert sct_payload.get('correct') is False
def test_test_exercise_pass(conn, sct): result = {"id": [1], "name": ["greg"]} sct_payload = te( sct=sct, student_code="SELECT * FROM company", solution_code="SELECT * FROM company", pre_exercise_code="", student_conn=conn, solution_conn=None, student_result=result, solution_result=result, ex_type="NormalExercise", error=[], ) assert sct_payload.get("correct") is True
def test_error_handling(sct, passes, msg): sct_payload = te( sct = sct, student_code = "", solution_code = "", pre_exercise_code = "", student_conn = None, solution_conn = None, student_result = {}, solution_result = {}, ex_type="NormalExercise", error=['an error'] ) assert sct_payload.get('correct') == passes if msg: assert sct_payload.get('message') == msg
def test_test_error(conn): sct_payload = te(sct="Ex().test_error('NEW MESSAGE')", student_code="SELECT * FROM company", solution_code="SELECT id FROM company", pre_exercise_code="", student_conn=conn, solution_conn=None, student_result=None, solution_result=None, ex_type="NormalExercise", error=[{ 'type': 'error', 'payload': 'error payload' }]) assert sct_payload.get('message') == "NEW MESSAGE"
def test_allow_error(conn): sct_payload = te(sct="Ex().allow_error()", student_code="SELECT * FROM company", solution_code="SELECT id FROM company", pre_exercise_code="", student_conn=conn, solution_conn=None, student_result=None, solution_result=None, ex_type="NormalExercise", error=[{ 'type': 'error', 'payload': 'error payload' }]) assert sct_payload.get('correct') is True
def test_fail(conn): sol_result = {"id": [1], "name": ["greg"]} stu_result = {"id": [1, 2], "name": ["greg", "fred"]} sct_payload = te( sct="Ex().check_result()", student_code="SELECT * FROM company", solution_code="SELECT * FROM company", pre_exercise_code="", student_conn=conn, solution_conn=None, student_result=stu_result, solution_result=sol_result, ex_type="NormalExercise", error=[], ) assert sct_payload.get("correct") is False