feat: rename lists to projects
This commit is contained in:
parent
73244e7d85
commit
96a0f5e169
@ -26,12 +26,12 @@ import (
|
||||
|
||||
func TestUserProject(t *testing.T) {
|
||||
t.Run("Normal test", func(t *testing.T) {
|
||||
rec, err := newTestRequestWithUser(t, http.MethodPost, apiv1.UserList, &testuser1, "", nil, nil)
|
||||
rec, err := newTestRequestWithUser(t, http.MethodPost, apiv1.UserProject, &testuser1, "", nil, nil)
|
||||
assert.NoError(t, err)
|
||||
assert.Equal(t, "null\n", rec.Body.String())
|
||||
})
|
||||
t.Run("Search for user3", func(t *testing.T) {
|
||||
rec, err := newTestRequestWithUser(t, http.MethodPost, apiv1.UserList, &testuser1, "", map[string][]string{"s": {"user3"}}, nil)
|
||||
rec, err := newTestRequestWithUser(t, http.MethodPost, apiv1.UserProject, &testuser1, "", map[string][]string{"s": {"user3"}}, nil)
|
||||
assert.NoError(t, err)
|
||||
assert.Contains(t, rec.Body.String(), `user3`)
|
||||
assert.NotContains(t, rec.Body.String(), `user1`)
|
||||
|
@ -54,10 +54,12 @@ func (p *Provider) Search(_ *xorm.Session, _ string, _ int64) (result []*backgro
|
||||
// @Router /projects/{id}/backgrounds/upload [put]
|
||||
func (p *Provider) Set(s *xorm.Session, img *background.Image, project *models.Project, _ web.Auth) (err error) {
|
||||
// Remove the old background if one exists
|
||||
err = project.DeleteBackgroundFileIfExists()
|
||||
if err != nil {
|
||||
if project.BackgroundFileID != 0 {
|
||||
file := files.File{ID: project.BackgroundFileID}
|
||||
if err := file.Delete(); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
file := &files.File{}
|
||||
file.ID, err = strconv.ParseInt(img.ID, 10, 64)
|
||||
|
@ -39,26 +39,26 @@ type Migrator struct {
|
||||
}
|
||||
|
||||
type tickTickTask struct {
|
||||
FolderName string `csv:"Folder Name"`
|
||||
ListName string `csv:"List Name"`
|
||||
Title string `csv:"Title"`
|
||||
FolderName string`csv:"Folder Name"`
|
||||
ProjectName string`csv:"List Name"`
|
||||
Title string`csv:"Title"`
|
||||
TagsList string `csv:"Tags"`
|
||||
Tags []string `csv:"-"`
|
||||
Content string `csv:"Content"`
|
||||
Tags []string`csv:"-"`
|
||||
Content string`csv:"Content"`
|
||||
IsChecklistString string `csv:"Is Check list"`
|
||||
IsChecklist bool `csv:"-"`
|
||||
IsCheckproject bool`csv:"-"`
|
||||
StartDate tickTickTime `csv:"Start Date"`
|
||||
DueDate tickTickTime `csv:"Due Date"`
|
||||
ReminderDuration string `csv:"Reminder"`
|
||||
Reminder time.Duration `csv:"-"`
|
||||
Repeat string `csv:"Repeat"`
|
||||
Priority int `csv:"Priority"`
|
||||
Status string `csv:"Status"`
|
||||
Reminder time.Duration`csv:"-"`
|
||||
Repeat string`csv:"Repeat"`
|
||||
Priority int`csv:"Priority"`
|
||||
Status string`csv:"Status"`
|
||||
CreatedTime tickTickTime `csv:"Created Time"`
|
||||
CompletedTime tickTickTime `csv:"Completed Time"`
|
||||
Order float64 `csv:"Order"`
|
||||
TaskID int64 `csv:"taskId"`
|
||||
ParentID int64 `csv:"parentId"`
|
||||
Order float64`csv:"Order"`
|
||||
TaskID int64`csv:"taskId"`
|
||||
ParentID int64`csv:"parentId"`
|
||||
}
|
||||
|
||||
type tickTickTime struct {
|
||||
@ -84,11 +84,11 @@ func convertTickTickToVikunja(tasks []*tickTickTask) (result []*models.Namespace
|
||||
|
||||
projects := make(map[string]*models.ProjectWithTasksAndBuckets)
|
||||
for _, t := range tasks {
|
||||
_, has := projects[t.ListName]
|
||||
_, has := projects[t.ProjectName]
|
||||
if !has {
|
||||
projects[t.ListName] = &models.ProjectWithTasksAndBuckets{
|
||||
projects[t.ProjectName] = &models.ProjectWithTasksAndBuckets{
|
||||
Project: models.Project{
|
||||
Title: t.ListName,
|
||||
Title: t.ProjectName,
|
||||
},
|
||||
}
|
||||
}
|
||||
@ -130,7 +130,7 @@ func convertTickTickToVikunja(tasks []*tickTickTask) (result []*models.Namespace
|
||||
}
|
||||
}
|
||||
|
||||
projects[t.ListName].Tasks = append(projects[t.ListName].Tasks, task)
|
||||
projects[t.ProjectName].Tasks = append(projects[t.ProjectName].Tasks, task)
|
||||
}
|
||||
|
||||
for _, l := range projects {
|
||||
|
@ -42,7 +42,7 @@ func TestConvertTicktickTasksToVikunja(t *testing.T) {
|
||||
{
|
||||
TaskID: 1,
|
||||
ParentID: 0,
|
||||
ListName: "Project 1",
|
||||
ProjectName: "Project 1",
|
||||
Title: "Test task 1",
|
||||
Tags: []string{"label1", "label2"},
|
||||
Content: "Lorem Ipsum Dolor sit amet",
|
||||
@ -56,7 +56,7 @@ func TestConvertTicktickTasksToVikunja(t *testing.T) {
|
||||
{
|
||||
TaskID: 2,
|
||||
ParentID: 1,
|
||||
ListName: "Project 1",
|
||||
ProjectName: "Project 1",
|
||||
Title: "Test task 2",
|
||||
Status: "1",
|
||||
CompletedTime: time3,
|
||||
@ -65,7 +65,7 @@ func TestConvertTicktickTasksToVikunja(t *testing.T) {
|
||||
{
|
||||
TaskID: 3,
|
||||
ParentID: 0,
|
||||
ListName: "Project 1",
|
||||
ProjectName: "Project 1",
|
||||
Title: "Test task 3",
|
||||
Tags: []string{"label1", "label2", "other label"},
|
||||
StartDate: time1,
|
||||
@ -77,7 +77,7 @@ func TestConvertTicktickTasksToVikunja(t *testing.T) {
|
||||
{
|
||||
TaskID: 4,
|
||||
ParentID: 0,
|
||||
ListName: "Project 2",
|
||||
ProjectName: "Project 2",
|
||||
Title: "Test task 4",
|
||||
Status: "0",
|
||||
Order: -109951627777,
|
||||
@ -90,7 +90,7 @@ func TestConvertTicktickTasksToVikunja(t *testing.T) {
|
||||
assert.Len(t, vikunjaTasks[0].Projects, 2)
|
||||
|
||||
assert.Len(t, vikunjaTasks[0].Projects[0].Tasks, 3)
|
||||
assert.Equal(t, vikunjaTasks[0].Projects[0].Title, tickTickTasks[0].ListName)
|
||||
assert.Equal(t, vikunjaTasks[0].Projects[0].Title, tickTickTasks[0].ProjectName)
|
||||
|
||||
assert.Equal(t, vikunjaTasks[0].Projects[0].Tasks[0].Title, tickTickTasks[0].Title)
|
||||
assert.Equal(t, vikunjaTasks[0].Projects[0].Tasks[0].Description, tickTickTasks[0].Content)
|
||||
@ -134,7 +134,7 @@ func TestConvertTicktickTasksToVikunja(t *testing.T) {
|
||||
assert.Equal(t, vikunjaTasks[0].Projects[0].Tasks[2].Done, false)
|
||||
|
||||
assert.Len(t, vikunjaTasks[0].Projects[1].Tasks, 1)
|
||||
assert.Equal(t, vikunjaTasks[0].Projects[1].Title, tickTickTasks[3].ListName)
|
||||
assert.Equal(t, vikunjaTasks[0].Projects[1].Title, tickTickTasks[3].ProjectName)
|
||||
|
||||
assert.Equal(t, vikunjaTasks[0].Projects[1].Tasks[0].Title, tickTickTasks[3].Title)
|
||||
assert.Equal(t, vikunjaTasks[0].Projects[1].Tasks[0].Position, tickTickTasks[3].Order)
|
||||
|
@ -44,7 +44,7 @@ func TestConvertTrelloToVikunja(t *testing.T) {
|
||||
Name: "TestBoard",
|
||||
Desc: "This is a description",
|
||||
Closed: false,
|
||||
Lists: []*trello.List{
|
||||
Projects: []*trello.Project{
|
||||
{
|
||||
Name: "Test Project 1",
|
||||
Cards: []*trello.Card{
|
||||
@ -77,7 +77,7 @@ func TestConvertTrelloToVikunja(t *testing.T) {
|
||||
{
|
||||
Name: "Test Card 2",
|
||||
Pos: 124,
|
||||
Checklists: []*trello.Checklist{
|
||||
Checkprojects: []*trello.Checkproject{
|
||||
{
|
||||
Name: "Checkproject 1",
|
||||
CheckItems: []trello.CheckItem{
|
||||
@ -157,7 +157,7 @@ func TestConvertTrelloToVikunja(t *testing.T) {
|
||||
{
|
||||
Name: "TestBoard 2",
|
||||
Closed: false,
|
||||
Lists: []*trello.List{
|
||||
Projects: []*trello.Project{
|
||||
{
|
||||
Name: "Test Project 4",
|
||||
Cards: []*trello.Card{
|
||||
@ -172,7 +172,7 @@ func TestConvertTrelloToVikunja(t *testing.T) {
|
||||
{
|
||||
Name: "TestBoard Archived",
|
||||
Closed: true,
|
||||
Lists: []*trello.List{
|
||||
Projects: []*trello.Project{
|
||||
{
|
||||
Name: "Test Project 5",
|
||||
Cards: []*trello.Card{
|
||||
|
@ -47,6 +47,7 @@
|
||||
package routes
|
||||
|
||||
import (
|
||||
"code.vikunja.io/api/pkg/modules/migration/wunderlist"
|
||||
"errors"
|
||||
"net/url"
|
||||
"strings"
|
||||
@ -286,7 +287,7 @@ func registerAPIRoutes(a *echo.Group) {
|
||||
|
||||
u.GET("", apiv1.UserShow)
|
||||
u.POST("/password", apiv1.UserChangePassword)
|
||||
u.GET("s", apiv1.UserList)
|
||||
u.GET("s", apiv1.UserProject)
|
||||
u.POST("/token", apiv1.RenewToken)
|
||||
u.POST("/settings/email", apiv1.UpdateUserEmail)
|
||||
u.GET("/settings/avatar", apiv1.GetUserAvatarProvider)
|
||||
|
@ -377,7 +377,7 @@ func TestProjectUsers(t *testing.T) {
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
all, err := ListUsers(s, "user1", nil)
|
||||
all, err := ProjectUsers(s, "user1", nil)
|
||||
assert.NoError(t, err)
|
||||
assert.True(t, len(all) > 0)
|
||||
assert.Equal(t, all[0].Username, "user1")
|
||||
@ -387,7 +387,7 @@ func TestProjectUsers(t *testing.T) {
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
all, err := ListUsers(s, "uSEr1", nil)
|
||||
all, err := ProjectUsers(s, "uSEr1", nil)
|
||||
assert.NoError(t, err)
|
||||
assert.True(t, len(all) > 0)
|
||||
assert.Equal(t, all[0].Username, "user1")
|
||||
@ -406,7 +406,7 @@ func TestProjectUsers(t *testing.T) {
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
all, err := ListUsers(s, "", nil)
|
||||
all, err := ProjectUsers(s, "", nil)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, all, 0)
|
||||
})
|
||||
@ -415,7 +415,7 @@ func TestProjectUsers(t *testing.T) {
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
all, err := ListUsers(s, "user1@example.com", nil)
|
||||
all, err := ProjectUsers(s, "user1@example.com", nil)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, all, 0)
|
||||
db.AssertExists(t, "users", map[string]interface{}{
|
||||
@ -428,7 +428,7 @@ func TestProjectUsers(t *testing.T) {
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
all, err := ListUsers(s, "one else", nil)
|
||||
all, err := ProjectUsers(s, "one else", nil)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, all, 0)
|
||||
db.AssertExists(t, "users", map[string]interface{}{
|
||||
@ -441,7 +441,7 @@ func TestProjectUsers(t *testing.T) {
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
all, err := ListUsers(s, "user7@example.com", nil)
|
||||
all, err := ProjectUsers(s, "user7@example.com", nil)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, all, 1)
|
||||
assert.Equal(t, int64(7), all[0].ID)
|
||||
@ -455,7 +455,7 @@ func TestProjectUsers(t *testing.T) {
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
all, err := ListUsers(s, "with space", nil)
|
||||
all, err := ProjectUsers(s, "with space", nil)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, all, 1)
|
||||
assert.Equal(t, int64(12), all[0].ID)
|
||||
@ -483,7 +483,7 @@ func TestProjectUsers(t *testing.T) {
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
all, err := ListUsers(s, "user7", nil)
|
||||
all, err := ProjectUsers(s, "user7", nil)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, all, 1)
|
||||
assert.Equal(t, int64(7), all[0].ID)
|
||||
@ -496,7 +496,7 @@ func TestProjectUsers(t *testing.T) {
|
||||
s := db.NewSession()
|
||||
defer s.Close()
|
||||
|
||||
all, err := ListUsers(s, "user", nil)
|
||||
all, err := ProjectUsers(s, "user", nil)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, all, 0)
|
||||
db.AssertExists(t, "users", map[string]interface{}{
|
||||
|
@ -32,8 +32,8 @@ type ProjectUserOpts struct {
|
||||
MatchFuzzily bool
|
||||
}
|
||||
|
||||
// ListUsers returns a project with all users, filtered by an optional search string
|
||||
func ListUsers(s *xorm.Session, search string, opts *ProjectUserOpts) (users []*User, err error) {
|
||||
// ProjectUsers returns a project with all users, filtered by an optional search string
|
||||
func ProjectUsers(s *xorm.Session, search string, opts *ProjectUserOpts) (users []*User, err error) {
|
||||
if opts == nil {
|
||||
opts = &ProjectUserOpts{}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user