Esempio n. 1
0
def test_python3_add_two_numbers_code():
    out = run(python3_source_code_add_two_numbers, "py", None,
              ["python3", "Source.py"], [tc1])
    print(out)
    assert 1 == len(out)
    assert '57' == out[0].stdout
    assert Status.OK == out[0].status
Esempio n. 2
0
def test_c_add_two_numbers_code_compile_error():
    out = run(c_source_code_add_two_numbers_compile_error, "c",
              ["gcc", "-o", "program"], ["./program"], [tc1])
    assert 1 == len(out)
    assert ": error: expected" in out[0].stderr
    assert "sum = a  b;" in out[0].stderr
    assert Status.COMPILE_ERROR == out[0].status
Esempio n. 3
0
def test_two_inputs():
    out = run(java_source_code_with_input, "java", ["javac"],
              ["java", "Solution"], [tc1, tc2])
    assert 2 == len(out)
    assert '57' == out[0].stdout
    assert Status.OK == out[0].status
    assert '55' == out[1].stdout
    assert Status.OK == out[1].status
Esempio n. 4
0
def test_c_add_two_numbers_code():
    out = run(cpp_source_code_add_two_numbers, "cpp", ["g++", "-o", "program"],
              ["./program"], [tc1])
    assert 1 == len(out)
    assert '57' == out[0].stdout
    assert Status.OK == out[0].status
Esempio n. 5
0
def test_with_no_input():
    out = run(java_source_code_with_no_input, "java", ["javac"],
              ["java", "Solution"])
    assert 1 == len(out), 'Only 1 output must exist'
    assert 'Hello World' == out[0].stdout
    assert Status.OK == out[0].status
Esempio n. 6
0
def test_with_incorrect_run_command():
    out = run(java_source_code_with_no_input, "java", ["javac"],
              ["javaxyz", "Solution"])
    assert 1 == len(out), 'Only 1 output must exist'
    assert 'No such file or directory' in out[0].stderr
    assert Status.ENV_CRASH == out[0].status
Esempio n. 7
0
def test_cs_add_two_numbers_code():
    out = run(cs_source_code_add_two_numbers, "cs", ["mcs"],
              ["mono", "Program.exe"], [tc1])
    assert 1 == len(out)
    assert '57' == out[0].stdout
    assert Status.OK == out[0].status
Esempio n. 8
0
def test_add_two_numbers_code():
    out = run(java_source_code_with_input, "java", ["javac"],
              ["java", "Solution"], [tc1])
    assert 1 == len(out)
    assert '57' == out[0].stdout
    assert Status.OK == out[0].status
Esempio n. 9
0
def test_executable_java_code_with_compile_error():
    out = run(java_source_code_with_compile_error, "java", ["javac"],
              ["java", "Solution"])
    assert 1 == len(out)
    assert "error: ';' expected" in out[0].stderr
    assert Status.COMPILE_ERROR == out[0].status
Esempio n. 10
0
def test_executable_java_code_with_runtime_exception():
    out = run(java_source_code_with_exception, "java", ["javac"],
              ["java", "Solution"])
    assert 1 == len(out)
    assert 'java.lang.RuntimeException' in out[0].stderr
    assert Status.RUNTIME_ERROR == out[0].status