Ejemplo n.º 1
0
def test_state_dec_instant_eval():
    state = State("student_code", "", "", None, None, {}, {}, Reporter())

    @state_dec
    def stu_code(state, x='x'):
        return state.student_code + x

    assert stu_code(state) == "student_codex"
Ejemplo n.º 2
0
def test_initial_state():
    State(student_code={'script.py': '1'},
          solution_code={'script.py': '1'},
          reporter=Reporter(),
          pre_exercise_code="",
          student_result="",
          solution_result="",
          student_conn=None,
          solution_conn=None,
          ast_dispatcher=Dispatcher(DUMMY_NODES, ParseHey()))
Ejemplo n.º 3
0
def state():
    return State(
        student_code="",
        solution_code="",
        reporter=Reporter(),
        # args below should be ignored
        pre_exercise_code="NA",
        student_result={'a': [1]},
        solution_result={'b': [2]},
        student_conn=None,
        solution_conn=None)
Ejemplo n.º 4
0
def state():
    return State(
        student_code="",
        solution_code="",
        reporter=Reporter(),
        # args below should be ignored
        pre_exercise_code="NA",
        student_result="",
        solution_result="",
        student_conn=None,
        solution_conn=None,
        ast_dispatcher=Dispatcher(DUMMY_NODES, ParseHey()))
Ejemplo n.º 5
0
def state():
    return State(
        # only Reporter and Dispatcher are used
        student_code="",
        solution_code="",
        reporter=Reporter(),
        pre_exercise_code="",
        student_result="",
        solution_result="",
        student_conn=None,
        solution_conn=None,
    )
Ejemplo n.º 6
0
def state():
    return State(
        # only Reporter and Dispatcher are used
        student_code="",
        solution_code="",
        reporter=Reporter(),
        pre_exercise_code="",
        student_result="",
        solution_result="",
        student_conn=None,
        solution_conn=None,
        ast_dispatcher=Dispatcher(ast.AST, DUMMY_NODES, ParseHey()),
    )
Ejemplo n.º 7
0
def prepare_state(student_code):
    return State(
        student_code=student_code,
        reporter=Reporter(),
        # args below should be ignored
        solution_code="NA",
        pre_exercise_code="NA",
        solution_ast="NA",
        student_ast="NA",
        student_result=[],
        solution_result=[],
        student_conn=None,
        solution_conn=None)
Ejemplo n.º 8
0
def code_state():
    return State(
        student_code={
            'script1.py': '1 + 1',
            'script2.py': '2 + 2'
        },
        solution_code={
            'script1.py': '3 + 3',
            'script2.py': '4 + 4'
        },
        reporter=Reporter(),
        # args below should be ignored
        pre_exercise_code="NA",
        student_result="",
        solution_result="",
        student_conn=None,
        solution_conn=None,
        ast_dispatcher=Dispatcher(DUMMY_NODES, ParseHey()))
Ejemplo n.º 9
0
def state():
    return State("student_code", "", "", None, None, {}, {}, Reporter())