You've already forked focalboard
mirror of
https://github.com/mattermost/focalboard.git
synced 2025-07-15 23:54:29 +02:00
Merge branch 'main' into issue-2617
This commit is contained in:
@ -13,9 +13,11 @@ import (
|
||||
"github.com/mattermost/focalboard/server/server"
|
||||
"github.com/mattermost/focalboard/server/services/config"
|
||||
"github.com/mattermost/focalboard/server/services/permissions/localpermissions"
|
||||
"github.com/mattermost/focalboard/server/services/permissions/mmpermissions"
|
||||
"github.com/mattermost/focalboard/server/services/store"
|
||||
"github.com/mattermost/focalboard/server/services/store/sqlstore"
|
||||
|
||||
mmModel "github.com/mattermost/mattermost-server/v6/model"
|
||||
"github.com/mattermost/mattermost-server/v6/shared/mlog"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
@ -27,6 +29,16 @@ const (
|
||||
password = "Pa$$word"
|
||||
)
|
||||
|
||||
const (
|
||||
userAnon string = "anon"
|
||||
userNoTeamMember string = "no-team-member"
|
||||
userTeamMember string = "team-member"
|
||||
userViewer string = "viewer"
|
||||
userCommenter string = "commenter"
|
||||
userEditor string = "editor"
|
||||
userAdmin string = "admin"
|
||||
)
|
||||
|
||||
type LicenseType int
|
||||
|
||||
const (
|
||||
@ -42,6 +54,19 @@ type TestHelper struct {
|
||||
Client2 *client.Client
|
||||
}
|
||||
|
||||
type FakePermissionPluginAPI struct{}
|
||||
|
||||
func (*FakePermissionPluginAPI) LogError(str string, params ...interface{}) {}
|
||||
func (*FakePermissionPluginAPI) HasPermissionToTeam(userID string, teamID string, permission *mmModel.Permission) bool {
|
||||
if userID == userNoTeamMember {
|
||||
return false
|
||||
}
|
||||
if teamID == "empty-team" {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
func getTestConfig() (*config.Configuration, error) {
|
||||
dbType, connectionString, err := sqlstore.PrepareNewTestDatabase()
|
||||
if err != nil {
|
||||
@ -135,6 +160,42 @@ func newTestServerWithLicense(singleUserToken string, licenseType LicenseType) *
|
||||
return srv
|
||||
}
|
||||
|
||||
func newTestServerPluginMode() *server.Server {
|
||||
cfg, err := getTestConfig()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
cfg.AuthMode = "mattermost"
|
||||
cfg.EnablePublicSharedBoards = true
|
||||
|
||||
logger, _ := mlog.NewLogger()
|
||||
if err = logger.Configure("", cfg.LoggingCfgJSON, nil); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
innerStore, err := server.NewStore(cfg, logger)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
db := NewPluginTestStore(innerStore)
|
||||
|
||||
permissionsService := mmpermissions.New(db, &FakePermissionPluginAPI{})
|
||||
|
||||
params := server.Params{
|
||||
Cfg: cfg,
|
||||
DBStore: db,
|
||||
Logger: logger,
|
||||
PermissionsService: permissionsService,
|
||||
}
|
||||
|
||||
srv, err := server.New(params)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
return srv
|
||||
}
|
||||
|
||||
func SetupTestHelperWithToken(t *testing.T) *TestHelper {
|
||||
sessionToken := "TESTTOKEN"
|
||||
th := &TestHelper{T: t}
|
||||
@ -148,6 +209,13 @@ func SetupTestHelper(t *testing.T) *TestHelper {
|
||||
return SetupTestHelperWithLicense(t, LicenseNone)
|
||||
}
|
||||
|
||||
func SetupTestHelperPluginMode(t *testing.T) *TestHelper {
|
||||
th := &TestHelper{T: t}
|
||||
th.Server = newTestServerPluginMode()
|
||||
th.Start()
|
||||
return th
|
||||
}
|
||||
|
||||
func SetupTestHelperWithLicense(t *testing.T, licenseType LicenseType) *TestHelper {
|
||||
th := &TestHelper{T: t}
|
||||
th.Server = newTestServerWithLicense("", licenseType)
|
||||
|
Reference in New Issue
Block a user