[MM-54730] Don't use old hardcoded rule for validating imported posts (#25823)
* don't use old hardcoded rule for validating imported posts * fix http verb in doc * Use client config * Handle local mode * E2E tests * Enforce default if unable to use real limit * Unit tests * Fix tests * Use model.PostMessageMaxRunesV2 as lower default * Update direct post message length validation --------- Co-authored-by: Mattermost Build <build@mattermost.com> Co-authored-by: streamer45 <cstcld91@gmail.com>
Этот коммит содержится в:
@@ -68,6 +68,8 @@ type Validator struct { //nolint:govet
|
||||
directPosts uint64
|
||||
emojis map[string]ImportFileInfo
|
||||
|
||||
maxPostSize int
|
||||
|
||||
start time.Time
|
||||
end time.Time
|
||||
|
||||
@@ -96,6 +98,7 @@ func NewValidator(
|
||||
serverChannels map[ChannelTeam]*model.Channel,
|
||||
serverUsers map[string]*model.User,
|
||||
serverEmails map[string]*model.User,
|
||||
maxPostSize int,
|
||||
) *Validator {
|
||||
v := &Validator{
|
||||
archiveName: name,
|
||||
@@ -118,6 +121,8 @@ func NewValidator(
|
||||
channels: map[ChannelTeam]ImportFileInfo{},
|
||||
users: map[string]ImportFileInfo{},
|
||||
emojis: map[string]ImportFileInfo{},
|
||||
|
||||
maxPostSize: maxPostSize,
|
||||
}
|
||||
|
||||
v.loadFromServer()
|
||||
@@ -722,7 +727,7 @@ func (v *Validator) validateUser(info ImportFileInfo, line imports.LineImportDat
|
||||
|
||||
func (v *Validator) validatePost(info ImportFileInfo, line imports.LineImportData) (err error) {
|
||||
ivErr := validateNotNil(info, "post", line.Post, func(data imports.PostImportData) *ImportValidationError {
|
||||
appErr := imports.ValidatePostImportData(&data, model.PostMessageMaxRunesV1)
|
||||
appErr := imports.ValidatePostImportData(&data, v.maxPostSize)
|
||||
if appErr != nil {
|
||||
return &ImportValidationError{
|
||||
ImportFileInfo: info,
|
||||
@@ -854,7 +859,7 @@ func (v *Validator) validateDirectChannel(info ImportFileInfo, line imports.Line
|
||||
|
||||
func (v *Validator) validateDirectPost(info ImportFileInfo, line imports.LineImportData) (err error) {
|
||||
ivErr := validateNotNil(info, "direct_post", line.DirectPost, func(data imports.DirectPostImportData) *ImportValidationError {
|
||||
appErr := imports.ValidateDirectPostImportData(&data, model.PostMessageMaxRunesV1)
|
||||
appErr := imports.ValidateDirectPostImportData(&data, v.maxPostSize)
|
||||
if appErr != nil {
|
||||
return &ImportValidationError{
|
||||
ImportFileInfo: info,
|
||||
|
||||
Ссылка в новой задаче
Block a user