Skip to content

Commit 99e36ef

Browse files
committed
Always make a submission copy.
1 parent d62b456 commit 99e36ef

File tree

6 files changed

+9
-14
lines changed

6 files changed

+9
-14
lines changed

examples/0001_hello_world.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@
66
)
77

88
# Run submission on CE flavor of judge0.
9-
judge0.run(submissions=submission)
9+
submission = judge0.run(submissions=submission)
1010

1111
print(submission.stdout)

examples/0002_hello_world.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@
66
)
77

88
# Instead of relying on the CE flavor of judge0, we can use EXTRA_CE.
9-
judge0.run(client=judge0.EXTRA_CE, submissions=submission)
9+
submission = judge0.run(client=judge0.EXTRA_CE, submissions=submission)
1010

1111
print(submission.stdout)

examples/0003_hello_world.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@
55
language=judge0.PYTHON,
66
)
77

8-
judge0.run(submissions=submission)
8+
submission = judge0.run(submissions=submission)
99

1010
print(submission.stdout)

examples/0004_hello_world.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
import judge0
22

3-
result = judge0.run(source_code="print('Hello Judge0')")
4-
print(result.stdout)
3+
submission = judge0.run(source_code="print('Hello Judge0')")
4+
print(submission.stdout)

src/judge0/api.py

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -160,12 +160,6 @@ def create_submissions_from_test_cases(
160160
| Submissions | TestCases | Submissions |
161161
162162
"""
163-
# Let's deal with the simplest cases where no test cases are provided. We
164-
# return original submissions argument as this gives a user an option
165-
# to change the original Submission objects, without creating copies of it.
166-
if test_cases is None or isinstance(test_cases, list) and len(test_cases) == 0:
167-
return submissions
168-
169163
if isinstance(submissions, Submission):
170164
submissions_list = [submissions]
171165
else:
@@ -185,7 +179,9 @@ def create_submissions_from_test_cases(
185179
submission_copy.expected_output = test_case.expected_output
186180
all_submissions.append(submission_copy)
187181

188-
if isinstance(submissions, Submission) and isinstance(test_cases, TestCase):
182+
if isinstance(submissions, Submission) and (
183+
isinstance(test_cases, TestCase) or test_cases is None
184+
):
189185
return all_submissions[0]
190186
else:
191187
return all_submissions

tests/test_api_test_cases.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,10 +121,9 @@ def test_test_cases_from_run(
121121
],
122122
)
123123
def test_no_test_cases(submissions, expected_status, request):
124-
"""This test tests that if no test cases are provided, the submissions are changed in place."""
125124
client = request.getfixturevalue("judge0_ce_client")
126125

127-
judge0.run(
126+
submissions = judge0.run(
128127
client=client,
129128
submissions=submissions,
130129
)

0 commit comments

Comments
 (0)