|
6 | 6 | "strings"
|
7 | 7 |
|
8 | 8 | "github.com/j178/leetgo/config"
|
| 9 | + "github.com/j178/leetgo/utils" |
9 | 10 | )
|
10 | 11 |
|
11 | 12 | type UserStatus struct {
|
@@ -96,17 +97,17 @@ func (r *SubmitCheckResult) Display(q *QuestionData) string {
|
96 | 97 | "\n%s%s%s%s%s%s\n",
|
97 | 98 | config.FailedStyle.Render(" × Wrong Answer\n"),
|
98 | 99 | fmt.Sprintf("\nPassed cases: %d/%d", r.TotalCorrect, r.TotalTestcases),
|
99 |
| - fmt.Sprintf("\nLast case: %s", strings.ReplaceAll(r.LastTestcase, "\n", "↩ ")), |
100 |
| - fmt.Sprintf("\nOutput: %s", strings.ReplaceAll(r.CodeOutput, "\n", "↩ ")), |
| 100 | + fmt.Sprintf("\nLast case: %s", utils.TruncateString(strings.ReplaceAll(r.LastTestcase, "\n", "↩ "), 100)), |
| 101 | + fmt.Sprintf("\nOutput: %s", utils.TruncateString(strings.ReplaceAll(r.CodeOutput, "\n", "↩ "), 100)), |
101 | 102 | stdout,
|
102 |
| - fmt.Sprintf("\nExpected: %s", strings.ReplaceAll(r.ExpectedOutput, "\n", "↩ ")), |
| 103 | + fmt.Sprintf("\nExpected: %s", utils.TruncateString(strings.ReplaceAll(r.ExpectedOutput, "\n", "↩ "), 100)), |
103 | 104 | )
|
104 | 105 | case MemoryLimitExceeded, TimeLimitExceeded, OutputLimitExceeded:
|
105 | 106 | return fmt.Sprintf(
|
106 | 107 | "\n%s%s%s\n",
|
107 | 108 | config.ErrorStyle.Render(fmt.Sprintf(" × %s\n", r.StatusMsg)),
|
108 | 109 | fmt.Sprintf("\nPassed cases: %d/%d", r.TotalCorrect, r.TotalTestcases),
|
109 |
| - fmt.Sprintf("\nLast case: %s", r.LastTestcase), |
| 110 | + fmt.Sprintf("\nLast case: %s", utils.TruncateString(r.LastTestcase, 100)), |
110 | 111 | )
|
111 | 112 | case RuntimeError:
|
112 | 113 | return fmt.Sprintf(
|
@@ -200,20 +201,20 @@ func (r *RunCheckResult) Display(q *QuestionData) string {
|
200 | 201 | "\n%s%s%s%s%s%s\n",
|
201 | 202 | config.PassedStyle.Render(fmt.Sprintf(" √ %s\n", r.StatusMsg)),
|
202 | 203 | fmt.Sprintf("\nPassed cases: %s", formatCompare(r.CompareResult)),
|
203 |
| - fmt.Sprintf("\nInput: %s", strings.ReplaceAll(r.InputData, "\n", "↩ ")), |
204 |
| - fmt.Sprintf("\nOutput: %s", strings.Join(r.CodeAnswer, "↩ ")), |
| 204 | + fmt.Sprintf("\nInput: %s", utils.TruncateString(strings.ReplaceAll(r.InputData, "\n", "↩ "), 100)), |
| 205 | + fmt.Sprintf("\nOutput: %s", utils.TruncateString(strings.Join(r.CodeAnswer, "↩ "), 100)), |
205 | 206 | stdout,
|
206 |
| - fmt.Sprintf("\nExpected: %s", strings.Join(r.ExpectedCodeAnswer, "↩ ")), |
| 207 | + fmt.Sprintf("\nExpected: %s", utils.TruncateString(strings.Join(r.ExpectedCodeAnswer, "↩ "), 100)), |
207 | 208 | )
|
208 | 209 | } else {
|
209 | 210 | return fmt.Sprintf(
|
210 | 211 | "\n%s%s%s%s%s%s\n",
|
211 | 212 | config.ErrorStyle.Render("\n × Wrong Answer\n"),
|
212 | 213 | fmt.Sprintf("\nPassed cases: %s", formatCompare(r.CompareResult)),
|
213 |
| - fmt.Sprintf("\nInput: %s", strings.ReplaceAll(r.InputData, "\n", "↩ ")), |
214 |
| - fmt.Sprintf("\nOutput: %s", strings.Join(r.CodeAnswer, "↩ ")), |
| 214 | + fmt.Sprintf("\nInput: %s", utils.TruncateString(strings.ReplaceAll(r.InputData, "\n", "↩ "), 100)), |
| 215 | + fmt.Sprintf("\nOutput: %s", utils.TruncateString(strings.Join(r.CodeAnswer, "↩ "), 100)), |
215 | 216 | stdout,
|
216 |
| - fmt.Sprintf("\nExpected: %s", strings.Join(r.ExpectedCodeAnswer, "↩ ")), |
| 217 | + fmt.Sprintf("\nExpected: %s", utils.TruncateString(strings.Join(r.ExpectedCodeAnswer, "↩ "), 100)), |
217 | 218 | )
|
218 | 219 | }
|
219 | 220 | case MemoryLimitExceeded, TimeLimitExceeded, OutputLimitExceeded:
|
|
0 commit comments