Ensure consistent naming of title fields (#528)
Remove task text and namespace name in migration Fix lint Add migration for namespace title Fix renaming namespace name to title Rename namespace name field to title Drop text column at the end of the migration Add migration for task text to title Rename task text to title Co-authored-by: kolaente <k@knt.li> Reviewed-on: https://kolaente.dev/vikunja/api/pulls/528
This commit is contained in:
@ -34,7 +34,7 @@ func TestInsertFromStructure(t *testing.T) {
|
||||
testStructure := []*models.NamespaceWithLists{
|
||||
{
|
||||
Namespace: models.Namespace{
|
||||
Name: "Test1",
|
||||
Title: "Test1",
|
||||
Description: "Lorem Ipsum",
|
||||
},
|
||||
Lists: []*models.List{
|
||||
@ -43,22 +43,22 @@ func TestInsertFromStructure(t *testing.T) {
|
||||
Description: "Something",
|
||||
Tasks: []*models.Task{
|
||||
{
|
||||
Text: "Task1",
|
||||
Title: "Task1",
|
||||
Description: "Lorem",
|
||||
},
|
||||
{
|
||||
Text: "Task with related tasks",
|
||||
Title: "Task with related tasks",
|
||||
RelatedTasks: map[models.RelationKind][]*models.Task{
|
||||
models.RelationKindSubtask: {
|
||||
{
|
||||
Text: "Related to task with related task",
|
||||
Title: "Related to task with related task",
|
||||
Description: "As subtask",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Text: "Task with attachments",
|
||||
Title: "Task with attachments",
|
||||
Attachments: []*models.TaskAttachment{
|
||||
{
|
||||
File: &files.File{
|
||||
|
@ -30,7 +30,7 @@ type Migrator interface {
|
||||
// The use case for this are Oauth flows, where the server token should remain hidden and not
|
||||
// known to the frontend.
|
||||
AuthURL() string
|
||||
// Name holds the name of the migration.
|
||||
// Title holds the name of the migration.
|
||||
// This is used to show the name to users and to keep track of users who already migrated.
|
||||
Name() string
|
||||
}
|
||||
|
@ -152,7 +152,7 @@ func convertListForFolder(listID int, list *list, content *wunderlistContents) (
|
||||
for _, t := range content.tasks {
|
||||
if t.ListID == listID {
|
||||
newTask := &models.Task{
|
||||
Text: t.Title,
|
||||
Title: t.Title,
|
||||
Created: timeutil.FromTime(t.CreatedAt),
|
||||
Done: t.Completed,
|
||||
}
|
||||
@ -217,7 +217,7 @@ func convertListForFolder(listID int, list *list, content *wunderlistContents) (
|
||||
newTask.RelatedTasks = make(models.RelatedTaskMap)
|
||||
}
|
||||
newTask.RelatedTasks[models.RelationKindSubtask] = append(newTask.RelatedTasks[models.RelationKindSubtask], &models.Task{
|
||||
Text: s.Title,
|
||||
Title: s.Title,
|
||||
})
|
||||
}
|
||||
}
|
||||
@ -247,7 +247,7 @@ func convertWunderlistToVikunja(content *wunderlistContents) (fullVikunjaHierach
|
||||
for _, folder := range content.folders {
|
||||
namespace := &models.NamespaceWithLists{
|
||||
Namespace: models.Namespace{
|
||||
Name: folder.Title,
|
||||
Title: folder.Title,
|
||||
Created: timeutil.FromTime(folder.CreatedAt),
|
||||
Updated: timeutil.FromTime(folder.UpdatedAt),
|
||||
},
|
||||
@ -274,7 +274,7 @@ func convertWunderlistToVikunja(content *wunderlistContents) (fullVikunjaHierach
|
||||
if len(listMap) > 0 {
|
||||
newNamespace := &models.NamespaceWithLists{
|
||||
Namespace: models.Namespace{
|
||||
Name: "Migrated from wunderlist",
|
||||
Title: "Migrated from wunderlist",
|
||||
},
|
||||
}
|
||||
|
||||
|
@ -192,7 +192,7 @@ func TestWunderlistParsing(t *testing.T) {
|
||||
expectedHierachie := []*models.NamespaceWithLists{
|
||||
{
|
||||
Namespace: models.Namespace{
|
||||
Name: "Lorem Ipsum",
|
||||
Title: "Lorem Ipsum",
|
||||
Created: timeutil.FromTime(time1),
|
||||
Updated: timeutil.FromTime(time2),
|
||||
},
|
||||
@ -202,7 +202,7 @@ func TestWunderlistParsing(t *testing.T) {
|
||||
Title: "Lorem1",
|
||||
Tasks: []*models.Task{
|
||||
{
|
||||
Text: "Ipsum1",
|
||||
Title: "Ipsum1",
|
||||
DueDate: 1378339200,
|
||||
Created: timeutil.FromTime(time1),
|
||||
Description: "Lorem Ipsum dolor sit amet",
|
||||
@ -222,17 +222,17 @@ func TestWunderlistParsing(t *testing.T) {
|
||||
Reminders: []timeutil.TimeStamp{timeutil.FromTime(time4)},
|
||||
},
|
||||
{
|
||||
Text: "Ipsum2",
|
||||
Title: "Ipsum2",
|
||||
DueDate: 1378339200,
|
||||
Created: timeutil.FromTime(time1),
|
||||
Description: "Lorem Ipsum dolor sit amet",
|
||||
RelatedTasks: map[models.RelationKind][]*models.Task{
|
||||
models.RelationKindSubtask: {
|
||||
{
|
||||
Text: "LoremSub1",
|
||||
Title: "LoremSub1",
|
||||
},
|
||||
{
|
||||
Text: "LoremSub2",
|
||||
Title: "LoremSub2",
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -244,7 +244,7 @@ func TestWunderlistParsing(t *testing.T) {
|
||||
Title: "Lorem2",
|
||||
Tasks: []*models.Task{
|
||||
{
|
||||
Text: "Ipsum3",
|
||||
Title: "Ipsum3",
|
||||
Done: true,
|
||||
DoneAt: timeutil.FromTime(time1),
|
||||
DueDate: 1378339200,
|
||||
@ -265,14 +265,14 @@ func TestWunderlistParsing(t *testing.T) {
|
||||
},
|
||||
},
|
||||
{
|
||||
Text: "Ipsum4",
|
||||
Title: "Ipsum4",
|
||||
DueDate: 1378339200,
|
||||
Created: timeutil.FromTime(time1),
|
||||
Reminders: []timeutil.TimeStamp{timeutil.FromTime(time3)},
|
||||
RelatedTasks: map[models.RelationKind][]*models.Task{
|
||||
models.RelationKindSubtask: {
|
||||
{
|
||||
Text: "LoremSub3",
|
||||
Title: "LoremSub3",
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -284,26 +284,26 @@ func TestWunderlistParsing(t *testing.T) {
|
||||
Title: "Lorem3",
|
||||
Tasks: []*models.Task{
|
||||
{
|
||||
Text: "Ipsum5",
|
||||
Title: "Ipsum5",
|
||||
DueDate: 1378339200,
|
||||
Created: timeutil.FromTime(time1),
|
||||
},
|
||||
{
|
||||
Text: "Ipsum6",
|
||||
Title: "Ipsum6",
|
||||
DueDate: 1378339200,
|
||||
Created: timeutil.FromTime(time1),
|
||||
Done: true,
|
||||
DoneAt: timeutil.FromTime(time1),
|
||||
},
|
||||
{
|
||||
Text: "Ipsum7",
|
||||
Title: "Ipsum7",
|
||||
DueDate: 1378339200,
|
||||
Created: timeutil.FromTime(time1),
|
||||
Done: true,
|
||||
DoneAt: timeutil.FromTime(time1),
|
||||
},
|
||||
{
|
||||
Text: "Ipsum8",
|
||||
Title: "Ipsum8",
|
||||
DueDate: 1378339200,
|
||||
Created: timeutil.FromTime(time1),
|
||||
},
|
||||
@ -314,14 +314,14 @@ func TestWunderlistParsing(t *testing.T) {
|
||||
Title: "Lorem4",
|
||||
Tasks: []*models.Task{
|
||||
{
|
||||
Text: "Ipsum9",
|
||||
Title: "Ipsum9",
|
||||
DueDate: 1378339200,
|
||||
Created: timeutil.FromTime(time1),
|
||||
Done: true,
|
||||
DoneAt: timeutil.FromTime(time1),
|
||||
},
|
||||
{
|
||||
Text: "Ipsum10",
|
||||
Title: "Ipsum10",
|
||||
DueDate: 1378339200,
|
||||
Created: timeutil.FromTime(time1),
|
||||
Done: true,
|
||||
@ -333,7 +333,7 @@ func TestWunderlistParsing(t *testing.T) {
|
||||
},
|
||||
{
|
||||
Namespace: models.Namespace{
|
||||
Name: "Migrated from wunderlist",
|
||||
Title: "Migrated from wunderlist",
|
||||
},
|
||||
Lists: []*models.List{
|
||||
{
|
||||
|
Reference in New Issue
Block a user