2022-12-14 10:51:53 +02:00
|
|
|
package integrationtests
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
"github.com/mattermost/focalboard/server/model"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
|
|
)
|
|
|
|
|
|
|
|
func TestSidebar(t *testing.T) {
|
|
|
|
th := SetupTestHelperWithToken(t).Start()
|
|
|
|
defer th.TearDown()
|
|
|
|
|
|
|
|
// we'll create a new board.
|
|
|
|
// The board should end up in a default "Boards" category
|
|
|
|
board := th.CreateBoard("team-id", "O")
|
|
|
|
|
|
|
|
categoryBoards := th.GetUserCategoryBoards("team-id")
|
|
|
|
require.Equal(t, 1, len(categoryBoards))
|
|
|
|
require.Equal(t, "Boards", categoryBoards[0].Name)
|
2023-01-24 12:11:54 +02:00
|
|
|
require.Equal(t, 1, len(categoryBoards[0].BoardMetadata))
|
|
|
|
require.Equal(t, board.ID, categoryBoards[0].BoardMetadata[0].BoardID)
|
2022-12-14 10:51:53 +02:00
|
|
|
|
|
|
|
// create a new category, a new board
|
|
|
|
// and move that board into the new category
|
|
|
|
board2 := th.CreateBoard("team-id", "O")
|
|
|
|
category := th.CreateCategory(model.Category{
|
|
|
|
Name: "Category 2",
|
|
|
|
TeamID: "team-id",
|
|
|
|
UserID: "single-user",
|
|
|
|
})
|
|
|
|
th.UpdateCategoryBoard("team-id", category.ID, board2.ID)
|
|
|
|
|
|
|
|
categoryBoards = th.GetUserCategoryBoards("team-id")
|
|
|
|
// now there should be two categories - boards and the one
|
|
|
|
// we created just now
|
|
|
|
require.Equal(t, 2, len(categoryBoards))
|
|
|
|
|
|
|
|
// the newly created category should be the first one array
|
|
|
|
// as new categories end up on top in LHS
|
|
|
|
require.Equal(t, "Category 2", categoryBoards[0].Name)
|
2023-01-24 12:11:54 +02:00
|
|
|
require.Equal(t, 1, len(categoryBoards[0].BoardMetadata))
|
|
|
|
require.Equal(t, board2.ID, categoryBoards[0].BoardMetadata[0].BoardID)
|
2022-12-14 10:51:53 +02:00
|
|
|
|
|
|
|
// now we'll delete the custom category we created, "Category 2"
|
|
|
|
// and all it's boards should get moved to the Boards category
|
|
|
|
th.DeleteCategory("team-id", category.ID)
|
|
|
|
categoryBoards = th.GetUserCategoryBoards("team-id")
|
|
|
|
require.Equal(t, 1, len(categoryBoards))
|
|
|
|
require.Equal(t, "Boards", categoryBoards[0].Name)
|
2023-01-24 12:11:54 +02:00
|
|
|
require.Equal(t, 2, len(categoryBoards[0].BoardMetadata))
|
|
|
|
require.Contains(t, categoryBoards[0].BoardMetadata, model.CategoryBoardMetadata{BoardID: board.ID, Hidden: false})
|
|
|
|
require.Contains(t, categoryBoards[0].BoardMetadata, model.CategoryBoardMetadata{BoardID: board2.ID, Hidden: false})
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestHideUnhideBoard(t *testing.T) {
|
|
|
|
th := SetupTestHelperWithToken(t).Start()
|
|
|
|
defer th.TearDown()
|
|
|
|
|
|
|
|
// we'll create a new board.
|
|
|
|
// The board should end up in a default "Boards" category
|
|
|
|
th.CreateBoard("team-id", "O")
|
|
|
|
|
|
|
|
// the created board should not be hidden
|
|
|
|
categoryBoards := th.GetUserCategoryBoards("team-id")
|
|
|
|
require.Equal(t, 1, len(categoryBoards))
|
|
|
|
require.Equal(t, "Boards", categoryBoards[0].Name)
|
|
|
|
require.Equal(t, 1, len(categoryBoards[0].BoardMetadata))
|
|
|
|
require.False(t, categoryBoards[0].BoardMetadata[0].Hidden)
|
|
|
|
|
|
|
|
// now we'll hide the board
|
|
|
|
response := th.Client.HideBoard("team-id", categoryBoards[0].ID, categoryBoards[0].BoardMetadata[0].BoardID)
|
|
|
|
th.CheckOK(response)
|
|
|
|
|
|
|
|
// verifying if the board has been marked as hidden
|
|
|
|
categoryBoards = th.GetUserCategoryBoards("team-id")
|
|
|
|
require.True(t, categoryBoards[0].BoardMetadata[0].Hidden)
|
|
|
|
|
|
|
|
// trying to hide the already hidden board.This should have no effect
|
|
|
|
response = th.Client.HideBoard("team-id", categoryBoards[0].ID, categoryBoards[0].BoardMetadata[0].BoardID)
|
|
|
|
th.CheckOK(response)
|
|
|
|
categoryBoards = th.GetUserCategoryBoards("team-id")
|
|
|
|
require.True(t, categoryBoards[0].BoardMetadata[0].Hidden)
|
|
|
|
|
|
|
|
// now we'll unhide the board
|
|
|
|
response = th.Client.UnhideBoard("team-id", categoryBoards[0].ID, categoryBoards[0].BoardMetadata[0].BoardID)
|
|
|
|
th.CheckOK(response)
|
|
|
|
|
|
|
|
// verifying
|
|
|
|
categoryBoards = th.GetUserCategoryBoards("team-id")
|
|
|
|
require.False(t, categoryBoards[0].BoardMetadata[0].Hidden)
|
|
|
|
|
|
|
|
// trying to unhide the already visible board.This should have no effect
|
|
|
|
response = th.Client.UnhideBoard("team-id", categoryBoards[0].ID, categoryBoards[0].BoardMetadata[0].BoardID)
|
|
|
|
th.CheckOK(response)
|
|
|
|
categoryBoards = th.GetUserCategoryBoards("team-id")
|
|
|
|
require.False(t, categoryBoards[0].BoardMetadata[0].Hidden)
|
2022-12-14 10:51:53 +02:00
|
|
|
}
|