forked from vikunja/vikunja
fix: sort reminders
This commit is contained in:
parent
e5cec4bd16
commit
3c4fb76554
|
@ -1556,6 +1556,10 @@ func (t *Task) updateReminders(s *xorm.Session, reminders []*TaskReminder, dueDa
|
|||
return err
|
||||
}
|
||||
}
|
||||
// sort reminders
|
||||
sort.Slice(t.Reminders, func(i, j int) bool {
|
||||
return t.Reminders[i].Reminder.Before(t.Reminders[j].Reminder)
|
||||
})
|
||||
|
||||
if len(reminders) == 0 {
|
||||
t.Reminders = nil
|
||||
|
|
|
@ -79,9 +79,9 @@ func TestTask_Create(t *testing.T) {
|
|||
Title: "Lorem",
|
||||
Description: "Lorem Ipsum Dolor",
|
||||
ListID: 1,
|
||||
DueDate: time.Unix(1550000000, 0),
|
||||
StartDate: time.Unix(1550000010, 0),
|
||||
EndDate: time.Unix(1550000020, 0),
|
||||
DueDate: time.Date(2023, time.March, 7, 22, 5, 0, 0, time.Local),
|
||||
StartDate: time.Date(2023, time.March, 7, 22, 5, 10, 0, time.Local),
|
||||
EndDate: time.Date(2023, time.March, 7, 22, 5, 20, 0, time.Local),
|
||||
Reminders: []*TaskReminder{
|
||||
{
|
||||
RelativeTo: "due_date",
|
||||
|
@ -96,15 +96,15 @@ func TestTask_Create(t *testing.T) {
|
|||
RelativePeriod: -1,
|
||||
},
|
||||
{
|
||||
Reminder: time.Unix(1550000020, 0),
|
||||
Reminder: time.Date(2023, time.March, 7, 23, 0, 0, 0, time.Local),
|
||||
},
|
||||
}}
|
||||
err := task.Create(s, usr)
|
||||
assert.NoError(t, err)
|
||||
assert.Equal(t, task.Reminders[0].Reminder, time.Unix(1550000001, 0))
|
||||
assert.Equal(t, task.Reminders[1].Reminder, time.Unix(1550000008, 0))
|
||||
assert.Equal(t, task.Reminders[2].Reminder, time.Unix(1550000019, 0))
|
||||
assert.Equal(t, task.Reminders[3].Reminder, time.Unix(1550000020, 0))
|
||||
assert.Equal(t, time.Date(2023, time.March, 7, 22, 5, 1, 0, time.Local), task.Reminders[0].Reminder)
|
||||
assert.Equal(t, time.Date(2023, time.March, 7, 22, 5, 8, 0, time.Local), task.Reminders[1].Reminder)
|
||||
assert.Equal(t, time.Date(2023, time.March, 7, 22, 5, 19, 0, time.Local), task.Reminders[2].Reminder)
|
||||
assert.Equal(t, time.Date(2023, time.March, 7, 23, 0, 0, 0, time.Local), task.Reminders[3].Reminder)
|
||||
err = s.Commit()
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
|
@ -416,9 +416,9 @@ func TestTask_Update(t *testing.T) {
|
|||
ID: 1,
|
||||
ListID: 1,
|
||||
Title: "test",
|
||||
DueDate: time.Unix(1550000000, 0),
|
||||
StartDate: time.Unix(1550000010, 0),
|
||||
EndDate: time.Unix(1550000020, 0),
|
||||
DueDate: time.Date(2023, time.March, 7, 22, 5, 0, 0, time.Local),
|
||||
StartDate: time.Date(2023, time.March, 7, 22, 5, 10, 0, time.Local),
|
||||
EndDate: time.Date(2023, time.March, 7, 22, 5, 20, 0, time.Local),
|
||||
Reminders: []*TaskReminder{
|
||||
{
|
||||
RelativeTo: "due_date",
|
||||
|
@ -433,16 +433,15 @@ func TestTask_Update(t *testing.T) {
|
|||
RelativePeriod: -1,
|
||||
},
|
||||
{
|
||||
Reminder: time.Unix(1550000020, 0),
|
||||
Reminder: time.Date(2023, time.March, 7, 23, 0, 0, 0, time.Local),
|
||||
},
|
||||
},
|
||||
}
|
||||
}}
|
||||
err := task.Update(s, u)
|
||||
assert.NoError(t, err)
|
||||
assert.Equal(t, task.Reminders[0].Reminder, time.Unix(1550000001, 0))
|
||||
assert.Equal(t, task.Reminders[1].Reminder, time.Unix(1550000008, 0))
|
||||
assert.Equal(t, task.Reminders[2].Reminder, time.Unix(1550000019, 0))
|
||||
assert.Equal(t, task.Reminders[3].Reminder, time.Unix(1550000020, 0))
|
||||
assert.Equal(t, time.Date(2023, time.March, 7, 22, 5, 1, 0, time.Local), task.Reminders[0].Reminder)
|
||||
assert.Equal(t, time.Date(2023, time.March, 7, 22, 5, 8, 0, time.Local), task.Reminders[1].Reminder)
|
||||
assert.Equal(t, time.Date(2023, time.March, 7, 22, 5, 19, 0, time.Local), task.Reminders[2].Reminder)
|
||||
assert.Equal(t, time.Date(2023, time.March, 7, 23, 0, 0, 0, time.Local), task.Reminders[3].Reminder)
|
||||
err = s.Commit()
|
||||
assert.NoError(t, err)
|
||||
db.AssertCount(t, "task_reminders", builder.Eq{"task_id": 1}, 4)
|
||||
|
|
Loading…
Reference in New Issue