Partially fix tests
continuous-integration/drone/pr Build was killed Details

This commit is contained in:
kolaente 2020-06-26 18:35:59 +02:00
parent 65ec94786a
commit 09c9780bb9
Signed by: konrad
GPG Key ID: F40E70337AB24C9B
17 changed files with 160 additions and 144 deletions

View File

@ -1,5 +1,5 @@
- id: 1
name: test
size: 100
created_unix: 1570998791
created: 1570998791
created_by_id: 1

View File

@ -1,8 +1,8 @@
- id: 1
task_id: 27
reminder_unix: 1543626724
reminder: 1543626724
created: 1543626724
- id: 2
task_id: 27
reminder_unix: 1543626824
reminder: 1543626824
created: 1543626724

View File

@ -45,7 +45,7 @@
index: 5
created: 1543626724
updated: 1543626724
due_date_unix: 1543636724
due_date: 1543636724
bucket_id: 2
- id: 6
title: 'task #6 lower due date'
@ -55,7 +55,7 @@
index: 6
created: 1543626724
updated: 1543626724
due_date_unix: 1543616724
due_date: 1543616724
bucket_id: 3
- id: 7
title: 'task #7 with start date'
@ -65,7 +65,7 @@
index: 7
created: 1543626724
updated: 1543626724
start_date_unix: 1544600000
start_date: 1544600000
bucket_id: 3
- id: 8
title: 'task #8 with end date'
@ -75,7 +75,7 @@
index: 8
created: 1543626724
updated: 1543626724
end_date_unix: 1544700000
end_date: 1544700000
bucket_id: 3
- id: 9
title: 'task #9 with start and end date'
@ -85,8 +85,8 @@
index: 9
created: 1543626724
updated: 1543626724
start_date_unix: 1544600000
end_date_unix: 1544700000
start_date: 1544600000
end_date: 1544700000
bucket_id: 1
- id: 10
title: 'task #10 basic'

View File

@ -7,6 +7,7 @@ import (
"reflect"
"runtime"
"testing"
"time"
"code.vikunja.io/web"
)

View File

@ -23,6 +23,7 @@ import (
"reflect"
"runtime"
"testing"
"time"
"code.vikunja.io/web"
)

View File

@ -24,6 +24,7 @@ import (
"reflect"
"runtime"
"testing"
"time"
)
func TestTeamList(t *testing.T) {

View File

@ -20,6 +20,7 @@ import (
"code.vikunja.io/api/pkg/db"
"code.vikunja.io/api/pkg/user"
"testing"
"time"
"code.vikunja.io/web"
)

View File

@ -23,6 +23,7 @@ import (
"reflect"
"runtime"
"testing"
"time"
"code.vikunja.io/web"
)

View File

@ -20,6 +20,7 @@ import (
"code.vikunja.io/api/pkg/db"
"code.vikunja.io/api/pkg/user"
"testing"
"time"
"code.vikunja.io/web"
)

View File

@ -24,6 +24,7 @@ import (
"reflect"
"runtime"
"testing"
"time"
)
func TestTeamNamespace(t *testing.T) {

View File

@ -20,6 +20,7 @@ import (
"code.vikunja.io/api/pkg/db"
"code.vikunja.io/api/pkg/user"
"testing"
"time"
"code.vikunja.io/web"
)

View File

@ -24,6 +24,7 @@ import (
"reflect"
"runtime"
"testing"
"time"
)
func TestNamespaceUser_Create(t *testing.T) {

View File

@ -23,6 +23,7 @@ import (
"code.vikunja.io/web"
"gopkg.in/d4l3k/messagediff.v1"
"testing"
"time"
)
func TestTaskCollection_ReadAll(t *testing.T) {
@ -62,8 +63,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
Title: "Label #4 - visible via other task",
CreatedByID: 2,
CreatedBy: user2,
Updated: 0,
Created: 0,
Updated: time.Time{},
Created: time.Time{},
},
},
RelatedTasks: map[RelationKind][]*Task{
@ -75,8 +76,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
CreatedByID: 1,
ListID: 1,
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
},
},
},
@ -91,7 +92,7 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ID: 1,
Name: "test",
Size: 100,
Created: 1570998791,
Created: time.Unix(1570998791, 0),
CreatedByID: 1,
},
},
@ -103,8 +104,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
CreatedBy: user1,
},
},
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task2 := &Task{
ID: 2,
@ -122,13 +123,13 @@ func TestTaskCollection_ReadAll(t *testing.T) {
Title: "Label #4 - visible via other task",
CreatedByID: 2,
CreatedBy: user2,
Updated: 0,
Created: 0,
Updated: time.Time{},
Created: time.Time{},
},
},
RelatedTasks: map[RelationKind][]*Task{},
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task3 := &Task{
ID: 3,
@ -139,8 +140,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
CreatedBy: user1,
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
Priority: 100,
BucketID: 2,
}
@ -153,8 +154,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
CreatedBy: user1,
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
Priority: 1,
BucketID: 2,
}
@ -167,9 +168,9 @@ func TestTaskCollection_ReadAll(t *testing.T) {
CreatedBy: user1,
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
Created: 1543626724,
Updated: 1543626724,
DueDate: 1543636724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
DueDate: time.Unix(1543636724, 0),
BucketID: 2,
}
task6 := &Task{
@ -181,9 +182,9 @@ func TestTaskCollection_ReadAll(t *testing.T) {
CreatedBy: user1,
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
Created: 1543626724,
Updated: 1543626724,
DueDate: 1543616724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
DueDate: time.Unix(1543616724, 0),
BucketID: 3,
}
task7 := &Task{
@ -195,9 +196,9 @@ func TestTaskCollection_ReadAll(t *testing.T) {
CreatedBy: user1,
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
Created: 1543626724,
Updated: 1543626724,
StartDate: 1544600000,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
StartDate: time.Unix(1544600000, 0),
BucketID: 3,
}
task8 := &Task{
@ -209,9 +210,9 @@ func TestTaskCollection_ReadAll(t *testing.T) {
CreatedBy: user1,
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
Created: 1543626724,
Updated: 1543626724,
EndDate: 1544700000,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
EndDate: time.Unix(1544700000, 0),
BucketID: 3,
}
task9 := &Task{
@ -224,10 +225,10 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
StartDate: 1544600000,
EndDate: 1544700000,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
StartDate: time.Unix(1544600000, 0),
EndDate: time.Unix(1544700000, 0),
}
task10 := &Task{
ID: 10,
@ -239,8 +240,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task11 := &Task{
ID: 11,
@ -252,8 +253,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task12 := &Task{
ID: 12,
@ -265,8 +266,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task15 := &Task{
ID: 15,
@ -278,8 +279,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 6,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 6,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task16 := &Task{
ID: 16,
@ -291,8 +292,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 7,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 7,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task17 := &Task{
ID: 17,
@ -304,8 +305,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 8,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 8,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task18 := &Task{
ID: 18,
@ -317,8 +318,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 9,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 9,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task19 := &Task{
ID: 19,
@ -330,8 +331,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 10,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 10,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task20 := &Task{
ID: 20,
@ -343,8 +344,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 11,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 11,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task21 := &Task{
ID: 21,
@ -356,8 +357,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 12,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 12,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task22 := &Task{
ID: 22,
@ -369,8 +370,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 13,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 13,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task23 := &Task{
ID: 23,
@ -382,8 +383,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 14,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 14,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task24 := &Task{
ID: 24,
@ -395,8 +396,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 15,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 15,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task25 := &Task{
ID: 25,
@ -408,8 +409,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 16,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 16,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task26 := &Task{
ID: 26,
@ -421,22 +422,25 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 17,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 17,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task27 := &Task{
ID: 27,
Title: "task #27 with reminders",
Identifier: "test1-12",
Index: 12,
CreatedByID: 1,
CreatedBy: user1,
Reminders: []time.Time{1543626724, 1543626824},
ID: 27,
Title: "task #27 with reminders",
Identifier: "test1-12",
Index: 12,
CreatedByID: 1,
CreatedBy: user1,
Reminders: []time.Time{
time.Unix(1543626724, 0),
time.Unix(543626824, 0),
},
ListID: 1,
BucketID: 1,
RelatedTasks: map[RelationKind][]*Task{},
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task28 := &Task{
ID: 28,
@ -449,8 +453,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
RelatedTasks: map[RelationKind][]*Task{},
RepeatAfter: 3600,
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task29 := &Task{
ID: 29,
@ -469,15 +473,15 @@ func TestTaskCollection_ReadAll(t *testing.T) {
Index: 1,
CreatedByID: 1,
ListID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
BucketID: 1,
},
},
},
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task30 := &Task{
ID: 30,
@ -493,8 +497,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
},
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task31 := &Task{
ID: 31,
@ -507,8 +511,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 1,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task32 := &Task{
ID: 32,
@ -520,8 +524,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
ListID: 3,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 21,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
task33 := &Task{
ID: 33,
@ -534,8 +538,8 @@ func TestTaskCollection_ReadAll(t *testing.T) {
PercentDone: 0.5,
RelatedTasks: map[RelationKind][]*Task{},
BucketID: 1,
Created: 1543626724,
Updated: 1543626724,
Created: time.Unix(1543626724, 0),
Updated: time.Unix(1543626724, 0),
}
type fields struct {

View File

@ -18,7 +18,6 @@ package models
import (
"code.vikunja.io/api/pkg/db"
"code.vikunja.io/api/pkg/timeutil"
"code.vikunja.io/api/pkg/user"
"github.com/stretchr/testify/assert"
"testing"
@ -131,54 +130,54 @@ func TestUpdateDone(t *testing.T) {
oldTask := &Task{Done: false}
newTask := &Task{Done: true}
updateDone(oldTask, newTask)
assert.NotEqual(t, time.Time(0), newTask.DoneAt)
assert.NotEqual(t, time.Time{}, newTask.DoneAt)
})
t.Run("unmarking a task as done", func(t *testing.T) {
db.LoadAndAssertFixtures(t)
oldTask := &Task{Done: true}
newTask := &Task{Done: false}
updateDone(oldTask, newTask)
assert.Equal(t, time.Time(0), newTask.DoneAt)
assert.Equal(t, time.Time{}, newTask.DoneAt)
})
t.Run("repeating interval", func(t *testing.T) {
t.Run("normal", func(t *testing.T) {
oldTask := &Task{
Done: false,
RepeatAfter: 8600,
DueDate: time.Time(1550000000),
DueDate: time.Unix(1550000000, 0),
}
newTask := &Task{
Done: true,
}
updateDone(oldTask, newTask)
var expected int64 = 1550008600
for expected < time.Now(){
expected += oldTask.RepeatAfter
var expected = time.Unix(1550008600, 0)
for time.Since(expected) > 0 {
expected = expected.Add(time.Second * time.Duration(oldTask.RepeatAfter))
}
assert.Equal(t, time.Time(expected), newTask.DueDate)
assert.Equal(t, expected, newTask.DueDate)
})
t.Run("don't update if due date is zero", func(t *testing.T) {
oldTask := &Task{
Done: false,
RepeatAfter: 8600,
DueDate: time.Time(0),
DueDate: time.Time{},
}
newTask := &Task{
Done: true,
DueDate: time.Time(1543626724),
DueDate: time.Unix(1543626724, 0),
}
updateDone(oldTask, newTask)
assert.Equal(t, time.Time(1543626724), newTask.DueDate)
assert.Equal(t, time.Unix(1543626724, 0), newTask.DueDate)
})
t.Run("update reminders", func(t *testing.T) {
oldTask := &Task{
Done: false,
RepeatAfter: 8600,
Reminders: []time.Time{
1550000000,
1555000000,
time.Unix(1550000000, 0),
time.Unix(1555000000, 0),
},
}
newTask := &Task{
@ -186,54 +185,54 @@ func TestUpdateDone(t *testing.T) {
}
updateDone(oldTask, newTask)
var expected1 int64 = 1550008600
var expected2 int64 = 1555008600
for expected1 < time.Now().{
expected1 += oldTask.RepeatAfter
var expected1 = time.Unix(1550008600, 0)
var expected2 = time.Unix(1555008600, 0)
for time.Since(expected1) > 0 {
expected1 = expected1.Add(time.Duration(oldTask.RepeatAfter) * time.Second)
}
for expected2 < time.Now().{
expected2 += oldTask.RepeatAfter
for time.Since(expected2) > 0 {
expected2 = expected2.Add(time.Duration(oldTask.RepeatAfter) * time.Second)
}
assert.Len(t, newTask.Reminders, 2)
assert.Equal(t, time.Time(expected1), newTask.Reminders[0])
assert.Equal(t, time.Time(expected2), newTask.Reminders[1])
assert.Equal(t, expected1, newTask.Reminders[0])
assert.Equal(t, expected2, newTask.Reminders[1])
})
t.Run("update start date", func(t *testing.T) {
oldTask := &Task{
Done: false,
RepeatAfter: 8600,
StartDate: time.Time(1550000000),
StartDate: time.Unix(1550000000, 0),
}
newTask := &Task{
Done: true,
}
updateDone(oldTask, newTask)
var expected int64 = 1550008600
for expected < time.Now().{
expected += oldTask.RepeatAfter
var expected = time.Unix(1550008600, 0)
for time.Since(expected) > 0 {
expected = expected.Add(time.Second * time.Duration(oldTask.RepeatAfter))
}
assert.Equal(t, time.Time(expected), newTask.StartDate)
assert.Equal(t, expected, newTask.StartDate)
})
t.Run("update end date", func(t *testing.T) {
oldTask := &Task{
Done: false,
RepeatAfter: 8600,
EndDate: time.Time(1550000000),
EndDate: time.Unix(1550000000, 0),
}
newTask := &Task{
Done: true,
}
updateDone(oldTask, newTask)
var expected int64 = 1550008600
for expected < time.Now().{
expected += oldTask.RepeatAfter
var expected = time.Unix(1550008600, 0)
for time.Since(expected) > 0 {
expected = expected.Add(time.Second * time.Duration(oldTask.RepeatAfter))
}
assert.Equal(t, time.Time(expected), newTask.EndDate)
assert.Equal(t, expected, newTask.EndDate)
})
t.Run("ensure due date is repeated even if the original one is in the future", func(t *testing.T) {
oldTask := &Task{
@ -245,8 +244,8 @@ func TestUpdateDone(t *testing.T) {
Done: true,
}
updateDone(oldTask, newTask)
expected := int64(oldTask.DueDate) + oldTask.RepeatAfter
assert.Equal(t, time.Time(expected), newTask.DueDate)
expected := oldTask.DueDate.Add(time.Duration(oldTask.RepeatAfter) * time.Second)
assert.Equal(t, expected, newTask.DueDate)
})
t.Run("repeat from current date", func(t *testing.T) {
t.Run("due date", func(t *testing.T) {
@ -254,14 +253,15 @@ func TestUpdateDone(t *testing.T) {
Done: false,
RepeatAfter: 8600,
RepeatFromCurrentDate: true,
DueDate: time.Time(1550000000),
DueDate: time.Unix(1550000000, 0),
}
newTask := &Task{
Done: true,
}
updateDone(oldTask, newTask)
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second), newTask.DueDate)
// Only comparing unix timestamps because time.Time use nanoseconds which can't ever possibly have the same value
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second).Unix(), newTask.DueDate.Unix())
})
t.Run("reminders", func(t *testing.T) {
oldTask := &Task{
@ -269,8 +269,8 @@ func TestUpdateDone(t *testing.T) {
RepeatAfter: 8600,
RepeatFromCurrentDate: true,
Reminders: []time.Time{
1550000000,
1555000000,
time.Unix(1550000000, 0),
time.Unix(1555000000, 0),
},
}
newTask := &Task{
@ -278,57 +278,61 @@ func TestUpdateDone(t *testing.T) {
}
updateDone(oldTask, newTask)
diff := time.Duration(oldTask.Reminders[1]-oldTask.Reminders[0]) * time.Second
diff := oldTask.Reminders[1].Sub(oldTask.Reminders[0])
assert.Len(t, newTask.Reminders, 2)
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second), newTask.Reminders[0])
assert.Equal(t, time.Now().Add(diff+time.Duration(oldTask.RepeatAfter)*time.Second), newTask.Reminders[1])
// Only comparing unix timestamps because time.Time use nanoseconds which can't ever possibly have the same value
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second).Unix(), newTask.Reminders[0].Unix())
assert.Equal(t, time.Now().Add(diff+time.Duration(oldTask.RepeatAfter)*time.Second).Unix(), newTask.Reminders[1].Unix())
})
t.Run("start date", func(t *testing.T) {
oldTask := &Task{
Done: false,
RepeatAfter: 8600,
RepeatFromCurrentDate: true,
StartDate: time.Time(1550000000),
StartDate: time.Unix(1550000000, 0),
}
newTask := &Task{
Done: true,
}
updateDone(oldTask, newTask)
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second), newTask.StartDate)
// Only comparing unix timestamps because time.Time use nanoseconds which can't ever possibly have the same value
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second).Unix(), newTask.StartDate.Unix())
})
t.Run("end date", func(t *testing.T) {
oldTask := &Task{
Done: false,
RepeatAfter: 8600,
RepeatFromCurrentDate: true,
EndDate: time.Time(1560000000),
EndDate: time.Unix(1560000000, 0),
}
newTask := &Task{
Done: true,
}
updateDone(oldTask, newTask)
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second), newTask.EndDate)
// Only comparing unix timestamps because time.Time use nanoseconds which can't ever possibly have the same value
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second).Unix(), newTask.EndDate.Unix())
})
t.Run("start and end date", func(t *testing.T) {
oldTask := &Task{
Done: false,
RepeatAfter: 8600,
RepeatFromCurrentDate: true,
StartDate: time.Time(1550000000),
EndDate: time.Time(1560000000),
StartDate: time.Unix(1550000000, 0),
EndDate: time.Unix(1560000000, 0),
}
newTask := &Task{
Done: true,
}
updateDone(oldTask, newTask)
diff := time.Duration(oldTask.EndDate-oldTask.StartDate) * time.Second
diff := oldTask.EndDate.Sub(oldTask.StartDate)
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second), newTask.StartDate)
assert.Equal(t, time.Now().Add(diff+time.Duration(oldTask.RepeatAfter)*time.Second), newTask.EndDate)
// Only comparing unix timestamps because time.Time use nanoseconds which can't ever possibly have the same value
assert.Equal(t, time.Now().Add(time.Duration(oldTask.RepeatAfter)*time.Second).Unix(), newTask.StartDate.Unix())
assert.Equal(t, time.Now().Add(diff+time.Duration(oldTask.RepeatAfter)*time.Second).Unix(), newTask.EndDate.Unix())
})
})
})

View File

@ -20,6 +20,7 @@ import (
"code.vikunja.io/api/pkg/db"
"code.vikunja.io/api/pkg/user"
"testing"
"time"
"code.vikunja.io/web"
)

View File

@ -20,7 +20,6 @@ import (
"code.vikunja.io/api/pkg/config"
"code.vikunja.io/api/pkg/files"
"code.vikunja.io/api/pkg/models"
"code.vikunja.io/api/pkg/timeutil"
"github.com/stretchr/testify/assert"
"gopkg.in/d4l3k/messagediff.v1"
"io/ioutil"

View File

@ -20,7 +20,6 @@ import (
"code.vikunja.io/api/pkg/config"
"code.vikunja.io/api/pkg/files"
"code.vikunja.io/api/pkg/models"
"code.vikunja.io/api/pkg/timeutil"
"github.com/stretchr/testify/assert"
"gopkg.in/d4l3k/messagediff.v1"
"io/ioutil"