class JudgeServerTest(unittest.TestCase): def setUp(self): self.token = "YOUR_TOKEN_HERE" self.server_base_url = "http://127.0.0.1:12358" self.client = JudgeServerClient(token=self.token, server_base_url=self.server_base_url) def test_success(self): data = self.client.ping() self.assertEqual(data["err"], None) self.assertEqual(data["data"]["action"], "pong") def test_invalid_token(self): client = JudgeServerClient(token="wrong token", server_base_url=self.server_base_url) data = client.ping() self.assertEqual(data["err"], "TokenVerificationFailed") def test_no_token_header(self): client = JudgeServerClientForTokenHeaderTest(token="wrong token", server_base_url=self.server_base_url) data = client.ping() self.assertEqual(data["err"], "TokenVerificationFailed")
def setUp(self): self.token = "YOUR_TOKEN_HERE" self.server_base_url = "http://127.0.0.1:12358" self.client = JudgeServerClient(token=self.token, server_base_url=self.server_base_url) self.c_src = r""" #include <stdio.h> int main(){ int a, b; scanf("%d%d", &a, &b); printf("%d\n", a+b); return 0; } """ self.c_spj_src = r""" #include <stdio.h> int main(){ /* AC return 0 WA return 1 Other Error return -1 */ return 0; } """ self.cpp_src = r""" #include <iostream> using namespace std; int main() { int a,b; cin >> a >> b; cout << a+b << endl; return 0; } """ self.java_src = r""" import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner in=new Scanner(System.in); int a=in.nextInt(); int b=in.nextInt(); System.out.println(a + b); } } """ self.py2_src = """s = raw_input() s1 = s.split(" ") print int(s1[0]) + int(s1[1])""" self.py3_src = """s = input() s1 = s.split(" ") print(int(s1[0]) + int(s1[1]))""" self.c_src_re = r"""
class JudgeServerTest(unittest.TestCase): def setUp(self): self.token = "YOUR_TOKEN_HERE" self.server_base_url = "http://127.0.0.1:12358" self.client = JudgeServerClient(token=self.token, server_base_url=self.server_base_url) self.c_src = r""" #include <stdio.h> int main(){ int a, b; scanf("%d%d", &a, &b); printf("%d\n", a+b); return 0; } """ self.c_spj_src = r""" #include <stdio.h> int main(){ /* AC return 0 WA return 1 Other Error return -1 */ return 0; } """ self.cpp_src = r""" #include <iostream> using namespace std; int main() { int a,b; cin >> a >> b; cout << a+b << endl; return 0; } """ self.java_src = r""" import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner in=new Scanner(System.in); int a=in.nextInt(); int b=in.nextInt(); System.out.println(a + b); } } """ self.py2_src = """s = raw_input() s1 = s.split(" ") print int(s1[0]) + int(s1[1])""" self.py3_src = """s = input() s1 = s.split(" ") print(int(s1[0]) + int(s1[1]))""" self.c_src_re = r""" #include <stdio.h> int main(){ int a[2]; scanf("%d%d", &a[0], &a[1]); a[2] = a[1] + a[0]; printf("%d\n", a[2]); return 0; } """ def test_success(self): data = self.client.ping() self.assertEqual(data["err"], None) self.assertEqual(data["data"]["action"], "pong") def test_invalid_token(self): client = JudgeServerClient(token="wrong token", server_base_url=self.server_base_url) data = client.ping() self.assertEqual(data["err"], "TokenVerificationFailed") def test_no_token_header(self): client = JudgeServerClientForTokenHeaderTest( token="wrong token", server_base_url=self.server_base_url) data = client.ping() self.assertEqual(data["err"], "TokenVerificationFailed") def test_spj_compile(self): data = self.client.compile_spj( src=self.c_spj_src, spj_version="2", spj_compile_config=special_judge_config['compile']) self.assertEqual(data['data'], 'success') def test_c_judge_ac(self): data = self.client.judge(src=self.c_src, language="c", max_cpu_time=1000, max_memory=1024 * 1024 * 64, test_case_id="normal", output=True) self.assertEqual(data['err'], None) self.assertEqual(data['data'][0]['error'], 0) self.assertEqual(data['data'][0]['result'], 0) def test_cpp_judge_ac(self): data = self.client.judge(src=self.cpp_src, language="cpp", max_cpu_time=1000, max_memory=1024 * 1024 * 64, test_case_id="normal") self.assertEqual(data['err'], None) self.assertEqual(data['data'][0]['error'], 0) self.assertEqual(data['data'][0]['result'], 0) def test_java_judge_ac(self): data = self.client.judge(src=self.java_src, language="java", max_cpu_time=2000, max_memory=1024 * 1024 * 128, test_case_id="normal") self.assertEqual(data['err'], None) self.assertEqual(data['data'][0]['error'], 0) self.assertEqual(data['data'][0]['result'], 0) def test_py2_judge_ac(self): data = self.client.judge(src=self.py2_src, language="py2", max_cpu_time=2000, max_memory=1024 * 1024 * 128, test_case_id="normal") self.assertEqual(data['err'], None) self.assertEqual(data['data'][0]['error'], 0) self.assertEqual(data['data'][0]['result'], 0) def test_py3_judge_ac(self): data = self.client.judge(src=self.py3_src, language="py3", max_cpu_time=2000, max_memory=1024 * 1024 * 128, test_case_id="normal") self.assertEqual(data['err'], None) self.assertEqual(data['data'][0]['error'], 0) self.assertEqual(data['data'][0]['result'], 0) def test_c_spj_judge_ac(self): data = self.client.judge(src=self.c_src, language="c", max_cpu_time=1000, max_memory=1024 * 1024 * 64, test_case_id="spj", is_spj=True, spj_version="1", spj_src=self.c_spj_src) self.assertEqual(data['err'], None) self.assertEqual(data['data'][0]['error'], 0) self.assertEqual(data['data'][0]['result'], 0) def test_c_dynamic_input_judge(self): data = self.client.judge(src=self.c_src, language="c", max_cpu_time=1000, max_memory=1024 * 1024 * 64, test_case=[{ "input": "1 2\n", "output": "3" }, { "input": "1 4\n", "output": "3" }], output=True) self.assertEqual(data['err'], None) self.assertEqual(data['data'][0]['error'], 0) self.assertEqual(data['data'][1]['error'], 0) if data['data'][0]['test_case'] == '2': self.assertEqual(data['data'][0]['result'], -1) self.assertEqual(data['data'][1]['result'], 0) else: self.assertEqual(data['data'][0]['result'], 0) self.assertEqual(data['data'][1]['result'], -1) def test_c_judge_re(self): data = self.client.judge(src=self.c_src_re, language="c", max_cpu_time=1000, max_memory=1024 * 1024 * 64, test_case_id="normal", output=True) self.assertEqual(data['err'], None) self.assertEqual(data['data'][0]['error'], 0) self.assertEqual(data['data'][0]['result'], 4)
def test_invalid_token(self): client = JudgeServerClient(token="wrong token", server_base_url=self.server_base_url) data = client.ping() self.assertEqual(data["err"], "TokenVerificationFailed")
def setUp(self): self.token = "db566c771e8ca6eb9196a08b16d656c1" self.server_base_url = "http://127.0.0.1:8090" self.client = JudgeServerClient(token=self.token, server_base_url=self.server_base_url)
def setUp(self): self.token = "YOUR_TOKEN_HERE" self.server_base_url = "http://127.0.0.1:12358" self.client = JudgeServerClient(token=self.token, server_base_url=self.server_base_url)