Skip to content

Commit 8e7f16f

Browse files
committed
minor improvements
- wrote 4 new tests - seggregated I/O of test programs - partially fixes #2
1 parent a89b6d9 commit 8e7f16f

25 files changed

+264
-90
lines changed

β€Žcoderunner/__init__.pyβ€Ž

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
"""Import Run() for initializing program data"""
2-
from coderunner.coderunner import Run
2+
from coderunner.coderunner import code

β€Žcoderunner/coderunner.pyβ€Ž

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
FIELDS = "?fields=stdout,memory,time,status,stderr,exit_code,created_at"
2828

2929

30-
class Run:
30+
class code:
3131
"""
3232
Args:
3333
- Source Code
@@ -101,12 +101,12 @@ def __readStatus(self, token: str):
101101
return self.__response["status"]["description"]
102102

103103
def __submit(self):
104-
if self.inp is not None:
105-
api_params["stdin"] = self.inp
104+
if self.program_input is not None:
105+
api_params["stdin"] = self.program_input
106106

107-
api_params["expected_output"] = self.output
107+
api_params["expected_output"] = self.program_output
108108
api_params["language_id"] = self.language_id
109-
api_params["source_code"] = self.source
109+
api_params["source_code"] = self.source_code
110110

111111
res = requests.post(API_URL, data=api_params)
112112
token = res.json()
@@ -150,17 +150,24 @@ def getTime(self):
150150
"""
151151
return self.__time
152152

153-
def getStatus(self):
153+
def run(self):
154154
"""
155-
submit the source code on judge0's server & return status
155+
submit the source code on judge0's server
156156
"""
157+
print(self.path)
158+
print(self.inp)
159+
print(self.source)
160+
print(self.output)
157161
if self.path:
158162
if self.inp is not None:
159-
self.inp = self.__readStandardInput()
160-
self.source = self.__readCode()
161-
self.output = self.__readExpectedOutput()
163+
self.program_input = self.__readStandardInput()
164+
self.source_code = self.__readCode()
165+
self.program_output = self.__readExpectedOutput()
162166

163167
token = self.__submit()
164-
status = self.__readStatus(token)
168+
self.__token = token
169+
170+
def getStatus(self):
171+
status = self.__readStatus(self.__token)
165172

166173
return status

β€Ždemo.pyβ€Ž

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,28 @@
11
from coderunner import coderunner
22
import pprint
33

4-
program_name = "testfiles/" + "test_python.py"
4+
source_code = "testfiles/" + "test_python_input.py"
55
language = "Python"
6-
output = "testfiles/" + "output2.txt"
7-
Input = "testfiles/" + "input.txt"
8-
r = coderunner.Run(program_name, language, output, Input)
6+
output = "testfiles/output/" + "output2.txt"
7+
Input = "testfiles/input/" + "input.txt"
8+
r = coderunner.code(source_code, language, output, Input)
99

10+
# run the code
11+
r.run()
12+
13+
# get Submission status
1014
print("Status : " + r.getStatus())
11-
if r.getError() != None:
12-
pprint.pprint("Error : " + r.getError())
15+
16+
r.run()
17+
18+
# get Submission status
19+
print("Status : " + r.getStatus)
20+
21+
# check if any error occured
22+
if r.getError() is not None:
23+
pprint.pprint("Error : " + r.getError())
1324
else:
14-
print("Standard Output : ")
15-
pprint.pprint(r.getOutput())
25+
print("Standard Output : ")
26+
pprint.pprint(r.getOutput())
1627
print("Execution Time : " + r.getTime())
17-
print("Memory : " + str(r.getMemory()))
28+
print("Memory : " + str(r.getMemory()))

β€Žtestfiles/input.txtβ€Ž

Lines changed: 0 additions & 1 deletion
This file was deleted.

β€Žtestfiles/input/input.txtβ€Ž

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
232

β€Žtestfiles/input/input4.txtβ€Ž

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Shruti
2+
50000

β€Žtestfiles/output/output2.txtβ€Ž

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
The number is a palindrome!

0 commit comments

Comments
Β (0)