Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 622142e

Browse files
committed
Implement stderr in UI
1 parent 56cd38c commit 622142e

File tree

2 files changed

+30
-6
lines changed

2 files changed

+30
-6
lines changed

‎src/ui/index.html

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
<!-- Right Panel BOTTOM -->
4747
<div id="bottom-right-panel" class="panel-item">
4848
<div class="tab-panel">
49-
<div class="tab">Testcase</div>
49+
<div class="tab"id="tab-testcases">Testcase</div>
5050
<div class="tab-separator"></div>
5151
<div class="tab" id="tab-test-results-button">Test Results</div>
5252
<div class="tab-separator"></div>
@@ -56,15 +56,20 @@
5656
<!-- Testcase Container-->
5757
<div id="tab-testcase-container">
5858
<h5 class="testcase-container-title">Input:</h5>
59-
<textarea id="input-container" class="testcase-container-text"></textarea>
60-
<h5 class="testcase-container-title">Output:</h5>
61-
<textarea readonly id="testcase-output" class="testcase-container-text">
59+
<textarea id="input-container" class="testcase-container-text">
6260
</textarea>
6361
<h5 class="testcase-container-title">Expected:</h5>
6462
<textarea readonly id="expected-output" class="testcase-container-text">
6563
</textarea>
64+
<h5 class="testcase-container-title">Output:</h5>
65+
<textarea readonly id="testcase-output" class="testcase-container-text">
66+
</textarea>
6667
<h5 class="testcase-container-title">Stdout:</h5>
67-
<textarea readonly id="testcase-stdout" class="testcase-container-text"></textarea>
68+
<textarea readonly id="testcase-stdout" class="testcase-container-text">
69+
</textarea>
70+
<h5 class="testcase-container-title">Stderr:</h5>
71+
<textarea readonly id="testcase-stderr" class="testcase-container-text">
72+
</textarea>
6873
<!-- Testcase Container END -->
6974
</div>
7075
</div>

‎src/ui/index.js

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,16 +182,19 @@ function setCustomTestcaseResults(results) {
182182
if (!validateResults(results)) {
183183
return;
184184
}
185+
186+
document.getElementById('testcase-stderr').textContent = results.stderr;
185187

186188
if (results.tests.length !== 1) {
187189
console.error("Expected 1 custom test results, got " +
188190
results.tests.length);
189-
return;
191+
return;
190192
}
191193

192194
if (results.tests[0].status !== "Skipped") {
193195
console.error("Expected custom test status to be 'skipped', got " +
194196
results.tests[0].status);
197+
return;
195198
}
196199

197200
console.log("Setting custom testcase results: " + JSON.stringify(results));
@@ -202,6 +205,8 @@ function setCustomTestcaseResults(results) {
202205

203206
run(setExpectedTestcaseResults, directoryManager.getCustomTestcaseName(),
204207
true);
208+
209+
document.getElementById('tab-testcases').click();
205210
}
206211

207212
function setExpectedTestcaseResults(expected) {
@@ -227,6 +232,12 @@ function setExpectedTestcaseResults(expected) {
227232
function runCustomTestcase() {
228233
console.log("Running custom testcase for " + activeProblem);
229234

235+
document.getElementById('testcase-stdout').textContent = "";
236+
document.getElementById('testcase-stderr').textContent = "";
237+
document.getElementById('testcase-output').textContent = "";
238+
document.getElementById('compilation-content').textContent = "";
239+
document.getElementById('test-results-content').innerHTML = "";
240+
230241
const input = document.getElementById('input-container').value + "\n*";
231242
const customTestcaseFilename =
232243
directoryManager.getCustomTestcaseFilename(activeProblem);
@@ -266,6 +277,10 @@ function setUserSolution(problemName) {
266277

267278
var previousProblem;
268279
function onProblemSelected(problemName) {
280+
document.getElementById('testcase-stdout').textContent = "";
281+
document.getElementById('testcase-stderr').textContent = "";
282+
document.getElementById('testcase-output').textContent = "";
283+
269284
saveSolution('cpp', editor.getValue());
270285
previousProblem = problemName;
271286

@@ -306,12 +321,16 @@ function initializeSaveCommand() {
306321
function initializeRunCommand() {
307322
ipcRenderer.on('run-command', () => {
308323
console.log('Received run command');
324+
document.getElementById('compilation-content').textContent = "";
325+
document.getElementById('test-results-content').innerHTML = "";
309326
run(setTestResults);
310327
});
311328

312329
document.getElementById('run-button')
313330
.addEventListener('click', function() {
314331
console.log('Run button clicked');
332+
document.getElementById('compilation-content').textContent = "";
333+
document.getElementById('test-results-content').innerHTML = "";
315334
run(setTestResults);
316335
});
317336
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /