Skip to content

Commit 6f2cfdb

Browse files
author
Tannatee Juchan
authored
feat: auto trim whitespace setting (#14)
* feat: add `autoTrim` option in to struct * feat: assignment auto trim options * fix: typo json
1 parent d3a6c3a commit 6f2cfdb

5 files changed

Lines changed: 24 additions & 17 deletions

File tree

domain/assignment.go

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -30,19 +30,20 @@ const (
3030
)
3131

3232
type Assignment struct {
33-
Id int `json:"id" db:"id"`
34-
WorkspaceId int `json:"-" db:"workspace_id"`
35-
Name string `json:"name" db:"name"`
36-
Description string `json:"description" db:"description"`
37-
DetailUrl string `json:"detailUrl" db:"detail_url"`
38-
MemoryLimit int `json:"memoryLimit" db:"memory_limit"`
39-
TimeLimit int `json:"timeLimit" db:"time_limit"`
40-
Level AssignmentLevel `json:"level" db:"level"`
41-
CreatedAt time.Time `json:"createdAt" db:"created_at"`
42-
UpdatedAt time.Time `json:"updatedAt" db:"updated_at"`
43-
PublishDate time.Time `json:"publishDate" db:"publish_date"`
44-
DueDate *time.Time `json:"dueDate" db:"due_date"`
45-
IsDeleted bool `json:"-" db:"is_deleted"`
33+
Id int `json:"id" db:"id"`
34+
WorkspaceId int `json:"-" db:"workspace_id"`
35+
Name string `json:"name" db:"name"`
36+
Description string `json:"description" db:"description"`
37+
DetailUrl string `json:"detailUrl" db:"detail_url"`
38+
MemoryLimit int `json:"memoryLimit" db:"memory_limit"`
39+
TimeLimit int `json:"timeLimit" db:"time_limit"`
40+
Level AssignmentLevel `json:"level" db:"level"`
41+
CreatedAt time.Time `json:"createdAt" db:"created_at"`
42+
UpdatedAt time.Time `json:"updatedAt" db:"updated_at"`
43+
PublishDate time.Time `json:"publishDate" db:"publish_date"`
44+
IsAutoTrimEnabled bool `json:"isAutoTrimEnabled" db:"is_auto_trim_enabled"`
45+
DueDate *time.Time `json:"dueDate" db:"due_date"`
46+
IsDeleted bool `json:"-" db:"is_deleted"`
4647

4748
// Always aggregation
4849
Testcases []Testcase `json:"testcases"`
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
ALTER TABLE `assignment`
2+
DROP `is_auto_trim_enabled`;
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
ALTER TABLE `assignment`
2+
ADD `is_auto_trim_enabled` BOOLEAN NOT NULL DEFAULT false AFTER `updated_at`;

platform/amqp/message.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@ type GradeRequestMessage struct {
1111
}
1212

1313
type GradeSettingsMessage struct {
14-
TimeLimit int `json:"timeLimit"`
15-
MemoryLimit int `json:"memoryLimit"`
14+
TimeLimit int `json:"timeLimit"`
15+
MemoryLimit int `json:"memoryLimit"`
16+
IsAutoTrimEnabled bool `json:"isAutoTrimEnabled"`
1617
}
1718

1819
type GradeTestMessage struct {

platform/amqp/publisher/grading.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,9 @@ func (p *gradingPublisher) Grade(assignment *domain.AssignmentWithStatus, submis
6161
SourceUrl: sourceUrl,
6262
Test: testcases,
6363
Settings: payload.GradeSettingsMessage{
64-
TimeLimit: assignment.TimeLimit,
65-
MemoryLimit: assignment.MemoryLimit,
64+
TimeLimit: assignment.TimeLimit,
65+
MemoryLimit: assignment.MemoryLimit,
66+
IsAutoTrimEnabled: assignment.IsAutoTrimEnabled,
6667
},
6768
Metadata: payload.GradeMetadataMessage{
6869
AssignmentId: assignment.Id,

0 commit comments

Comments
 (0)