MM-10264: Adds CLI command to import and export permissions. (#8787)
* MM-10264: Adds CLI command to import and export permissions. * MM-10264: Changes Scheme Name to DisplayName and adds Name slug field. * MM-10264: Changes display name max size. * MM-10264: Another merge fix. * MM-10264: Changes for more Schemes methods checking for migration. * MM-10264: More updates for Schemes migration checking.
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
463065c8ba
Коммит
e0390632b3
@@ -20,8 +20,9 @@ func initSqlSupplierSchemes(sqlStore SqlStore) {
|
||||
for _, db := range sqlStore.GetAllConns() {
|
||||
table := db.AddTableWithName(model.Scheme{}, "Schemes").SetKeys(false, "Id")
|
||||
table.ColMap("Id").SetMaxSize(26)
|
||||
table.ColMap("Name").SetMaxSize(64)
|
||||
table.ColMap("Description").SetMaxSize(1024)
|
||||
table.ColMap("Name").SetMaxSize(model.SCHEME_NAME_MAX_LENGTH).SetUnique(true)
|
||||
table.ColMap("DisplayName").SetMaxSize(model.SCHEME_DISPLAY_NAME_MAX_LENGTH)
|
||||
table.ColMap("Description").SetMaxSize(model.SCHEME_DESCRIPTION_MAX_LENGTH)
|
||||
table.ColMap("Scope").SetMaxSize(32)
|
||||
table.ColMap("DefaultTeamAdminRole").SetMaxSize(64)
|
||||
table.ColMap("DefaultTeamUserRole").SetMaxSize(64)
|
||||
|
||||
@@ -2164,12 +2164,14 @@ func testChannelStoreMaxChannelsPerTeam(t *testing.T, ss store.Store) {
|
||||
func testChannelStoreGetChannelsByScheme(t *testing.T, ss store.Store) {
|
||||
// Create some schemes.
|
||||
s1 := &model.Scheme{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_CHANNEL,
|
||||
}
|
||||
|
||||
s2 := &model.Scheme{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_CHANNEL,
|
||||
|
||||
@@ -63,6 +63,7 @@ func createDefaultRoles(t *testing.T, ss store.Store) {
|
||||
func testSchemeStoreSave(t *testing.T, ss store.Store) {
|
||||
// Save a new scheme.
|
||||
s1 := &model.Scheme{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_TEAM,
|
||||
@@ -73,6 +74,7 @@ func testSchemeStoreSave(t *testing.T, ss store.Store) {
|
||||
assert.Nil(t, res1.Err)
|
||||
d1 := res1.Data.(*model.Scheme)
|
||||
assert.Len(t, d1.Id, 26)
|
||||
assert.Equal(t, s1.DisplayName, d1.DisplayName)
|
||||
assert.Equal(t, s1.Name, d1.Name)
|
||||
assert.Equal(t, s1.Description, d1.Description)
|
||||
assert.NotZero(t, d1.CreateAt)
|
||||
@@ -116,6 +118,7 @@ func testSchemeStoreSave(t *testing.T, ss store.Store) {
|
||||
assert.Nil(t, res2.Err)
|
||||
d2 := res2.Data.(*model.Scheme)
|
||||
assert.Equal(t, d1.Id, d2.Id)
|
||||
assert.Equal(t, s1.DisplayName, d2.DisplayName)
|
||||
assert.Equal(t, s1.Name, d2.Name)
|
||||
assert.Equal(t, d1.Description, d2.Description)
|
||||
assert.NotZero(t, d2.CreateAt)
|
||||
@@ -130,6 +133,7 @@ func testSchemeStoreSave(t *testing.T, ss store.Store) {
|
||||
// Try saving one with an invalid ID set.
|
||||
s3 := &model.Scheme{
|
||||
Id: model.NewId(),
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_TEAM,
|
||||
@@ -142,6 +146,7 @@ func testSchemeStoreSave(t *testing.T, ss store.Store) {
|
||||
func testSchemeStoreGet(t *testing.T, ss store.Store) {
|
||||
// Save a scheme to test with.
|
||||
s1 := &model.Scheme{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_TEAM,
|
||||
@@ -157,6 +162,7 @@ func testSchemeStoreGet(t *testing.T, ss store.Store) {
|
||||
assert.Nil(t, res2.Err)
|
||||
d2 := res1.Data.(*model.Scheme)
|
||||
assert.Equal(t, d1.Id, d2.Id)
|
||||
assert.Equal(t, s1.DisplayName, d2.DisplayName)
|
||||
assert.Equal(t, s1.Name, d2.Name)
|
||||
assert.Equal(t, d1.Description, d2.Description)
|
||||
assert.NotZero(t, d2.CreateAt)
|
||||
@@ -177,21 +183,25 @@ func testSchemeStoreGetAllPage(t *testing.T, ss store.Store) {
|
||||
// Save a scheme to test with.
|
||||
schemes := []*model.Scheme{
|
||||
{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_TEAM,
|
||||
},
|
||||
{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_CHANNEL,
|
||||
},
|
||||
{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_TEAM,
|
||||
},
|
||||
{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_CHANNEL,
|
||||
@@ -211,6 +221,10 @@ func testSchemeStoreGetAllPage(t *testing.T, ss store.Store) {
|
||||
assert.Nil(t, r2.Err)
|
||||
s2 := r2.Data.([]*model.Scheme)
|
||||
assert.Len(t, s2, 2)
|
||||
assert.NotEqual(t, s1[0].DisplayName, s2[0].DisplayName)
|
||||
assert.NotEqual(t, s1[0].DisplayName, s2[1].DisplayName)
|
||||
assert.NotEqual(t, s1[1].DisplayName, s2[0].DisplayName)
|
||||
assert.NotEqual(t, s1[1].DisplayName, s2[1].DisplayName)
|
||||
assert.NotEqual(t, s1[0].Name, s2[0].Name)
|
||||
assert.NotEqual(t, s1[0].Name, s2[1].Name)
|
||||
assert.NotEqual(t, s1[1].Name, s2[0].Name)
|
||||
@@ -236,6 +250,7 @@ func testSchemeStoreGetAllPage(t *testing.T, ss store.Store) {
|
||||
func testSchemeStoreDelete(t *testing.T, ss store.Store) {
|
||||
// Save a new scheme.
|
||||
s1 := &model.Scheme{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_TEAM,
|
||||
@@ -246,6 +261,7 @@ func testSchemeStoreDelete(t *testing.T, ss store.Store) {
|
||||
assert.Nil(t, res1.Err)
|
||||
d1 := res1.Data.(*model.Scheme)
|
||||
assert.Len(t, d1.Id, 26)
|
||||
assert.Equal(t, s1.DisplayName, d1.DisplayName)
|
||||
assert.Equal(t, s1.Name, d1.Name)
|
||||
assert.Equal(t, s1.Description, d1.Description)
|
||||
assert.NotZero(t, d1.CreateAt)
|
||||
@@ -317,6 +333,7 @@ func testSchemeStoreDelete(t *testing.T, ss store.Store) {
|
||||
|
||||
// Try deleting a team scheme that's in use.
|
||||
s4 := &model.Scheme{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_TEAM,
|
||||
@@ -346,6 +363,7 @@ func testSchemeStoreDelete(t *testing.T, ss store.Store) {
|
||||
|
||||
// Try deleting a channel scheme that's in use.
|
||||
s5 := &model.Scheme{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_CHANNEL,
|
||||
|
||||
@@ -1041,12 +1041,14 @@ func testUpdateLastTeamIconUpdate(t *testing.T, ss store.Store) {
|
||||
func testGetTeamsByScheme(t *testing.T, ss store.Store) {
|
||||
// Create some schemes.
|
||||
s1 := &model.Scheme{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_TEAM,
|
||||
}
|
||||
|
||||
s2 := &model.Scheme{
|
||||
DisplayName: model.NewId(),
|
||||
Name: model.NewId(),
|
||||
Description: model.NewId(),
|
||||
Scope: model.SCHEME_SCOPE_TEAM,
|
||||
|
||||
Ссылка в новой задаче
Block a user