[MM-51468] import: allow usernames to be uppercase (#29530)
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
74afa1fa78
Коммит
de59770797
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
@@ -200,7 +200,7 @@ func ValidateUserImportData(data *UserImportData) *model.AppError {
|
|||||||
|
|
||||||
if data.Username == nil {
|
if data.Username == nil {
|
||||||
return model.NewAppError("BulkImport", "app.import.validate_user_import_data.username_missing.error", nil, "", http.StatusBadRequest)
|
return model.NewAppError("BulkImport", "app.import.validate_user_import_data.username_missing.error", nil, "", http.StatusBadRequest)
|
||||||
} else if !model.IsValidUsername(*data.Username) {
|
} else if !model.IsValidUsername(model.NormalizeUsername(*data.Username)) { // we already lowercase the username while saving and querying so we are more forgiving here
|
||||||
return model.NewAppError("BulkImport", "app.import.validate_user_import_data.username_invalid.error", nil, "", http.StatusBadRequest)
|
return model.NewAppError("BulkImport", "app.import.validate_user_import_data.username_invalid.error", nil, "", http.StatusBadRequest)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -329,7 +329,7 @@ func ValidateBotImportData(data *BotImportData) *model.AppError {
|
|||||||
|
|
||||||
if data.Username == nil {
|
if data.Username == nil {
|
||||||
return model.NewAppError("BulkImport", "app.import.validate_user_import_data.username_missing.error", nil, "", http.StatusBadRequest)
|
return model.NewAppError("BulkImport", "app.import.validate_user_import_data.username_missing.error", nil, "", http.StatusBadRequest)
|
||||||
} else if !model.IsValidUsername(*data.Username) {
|
} else if !model.IsValidUsername(model.NormalizeUsername(*data.Username)) { // we already lowercase the username while saving and querying so we are more forgiving here
|
||||||
return model.NewAppError("BulkImport", "app.import.validate_user_import_data.username_invalid.error", nil, "", http.StatusBadRequest)
|
return model.NewAppError("BulkImport", "app.import.validate_user_import_data.username_invalid.error", nil, "", http.StatusBadRequest)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -549,6 +549,11 @@ func TestImportValidateUserImportData(t *testing.T) {
|
|||||||
err = ValidateUserImportData(&data)
|
err = ValidateUserImportData(&data)
|
||||||
require.Nil(t, err, "Validation failed but should have been valid.")
|
require.Nil(t, err, "Validation failed but should have been valid.")
|
||||||
|
|
||||||
|
// Test with not-all lowercase username
|
||||||
|
data.Username = model.NewPointer("Bob")
|
||||||
|
err = ValidateUserImportData(&data)
|
||||||
|
require.Nil(t, err, "Validation failed but should have been valid even the username has uppercase letters.")
|
||||||
|
|
||||||
// Test various invalid optional field values.
|
// Test various invalid optional field values.
|
||||||
data.Nickname = model.NewPointer(strings.Repeat("abcdefghij", 7))
|
data.Nickname = model.NewPointer(strings.Repeat("abcdefghij", 7))
|
||||||
err = ValidateUserImportData(&data)
|
err = ValidateUserImportData(&data)
|
||||||
@@ -683,6 +688,11 @@ func TestImportValidateBotImportData(t *testing.T) {
|
|||||||
err := ValidateBotImportData(&data)
|
err := ValidateBotImportData(&data)
|
||||||
require.Nil(t, err, "Validation failed but should have been valid.")
|
require.Nil(t, err, "Validation failed but should have been valid.")
|
||||||
|
|
||||||
|
// Test with not-all lowercase username
|
||||||
|
data.Username = model.NewPointer("Bob")
|
||||||
|
err = ValidateBotImportData(&data)
|
||||||
|
require.Nil(t, err, "Validation failed but should have been valid even the username has uppercase letters.")
|
||||||
|
|
||||||
// Test with various invalid names.
|
// Test with various invalid names.
|
||||||
data.Username = nil
|
data.Username = nil
|
||||||
err = ValidateBotImportData(&data)
|
err = ValidateBotImportData(&data)
|
||||||
|
|||||||
@@ -127,6 +127,7 @@ func (b *Bot) PreSave() {
|
|||||||
b.CreateAt = GetMillis()
|
b.CreateAt = GetMillis()
|
||||||
b.UpdateAt = b.CreateAt
|
b.UpdateAt = b.CreateAt
|
||||||
b.DeleteAt = 0
|
b.DeleteAt = 0
|
||||||
|
b.Username = NormalizeUsername(b.Username)
|
||||||
}
|
}
|
||||||
|
|
||||||
// PreUpdate should be run before saving an updated bot to the database.
|
// PreUpdate should be run before saving an updated bot to the database.
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user