[MM-60684] GetMaxPostSize: update threshold to V2, it was way overdue (#28662)

Этот коммит содержится в:
Ibrahim Serdar Acikgoz
2024-12-17 14:26:48 +01:00
коммит произвёл GitHub
родитель 1f7f0d20cd
Коммит 74afa1fa78
4 изменённых файлов: 5 добавлений и 63 удалений

Просмотреть файл

@@ -369,12 +369,7 @@ func (ps *PlatformService) IsFirstUserAccount() bool {
}
func (ps *PlatformService) MaxPostSize() int {
maxPostSize := ps.Store.Post().GetMaxPostSize()
if maxPostSize == 0 {
return model.PostMessageMaxRunesV1
}
return maxPostSize
return ps.Store.Post().GetMaxPostSize()
}
func (ps *PlatformService) isUpgradedFromTE() bool {

Просмотреть файл

@@ -19,9 +19,7 @@ import (
"github.com/mattermost/mattermost/server/public/model"
"github.com/mattermost/mattermost/server/public/plugin/plugintest/mock"
"github.com/mattermost/mattermost/server/public/shared/mlog"
"github.com/mattermost/mattermost/server/v8/channels/app/platform"
"github.com/mattermost/mattermost/server/v8/channels/store"
"github.com/mattermost/mattermost/server/v8/channels/store/storetest"
storemocks "github.com/mattermost/mattermost/server/v8/channels/store/storetest/mocks"
"github.com/mattermost/mattermost/server/v8/channels/testlib"
eMocks "github.com/mattermost/mattermost/server/v8/einterfaces/mocks"
@@ -731,53 +729,6 @@ func TestImageProxy(t *testing.T) {
}
}
func TestMaxPostSize(t *testing.T) {
t.Parallel()
testCases := []struct {
Description string
StoreMaxPostSize int
ExpectedMaxPostSize int
}{
{
"Max post size less than model.model.POST_MESSAGE_MAX_RUNES_V1 ",
0,
model.PostMessageMaxRunesV1,
},
{
"4000 rune limit",
4000,
4000,
},
{
"16383 rune limit",
16383,
16383,
},
}
for _, testCase := range testCases {
t.Run(testCase.Description, func(t *testing.T) {
mockStore := &storetest.Store{}
defer mockStore.AssertExpectations(t)
mockStore.PostStore.On("GetMaxPostSize").Return(testCase.StoreMaxPostSize)
app := App{
ch: &Channels{
srv: &Server{
platform: &platform.PlatformService{
Store: mockStore,
},
},
},
}
assert.Equal(t, testCase.ExpectedMaxPostSize, app.MaxPostSize())
})
}
}
func TestDeletePostWithFileAttachments(t *testing.T) {
th := Setup(t).InitBasic()
defer th.TearDown()

Просмотреть файл

@@ -2619,17 +2619,14 @@ func (s *SqlPostStore) determineMaxPostSize() int {
mlog.Warn("Unable to determine the maximum supported post size", mlog.Err(err))
}
} else {
mlog.Warn("No implementation found to determine the maximum supported post size")
mlog.Error("No implementation found to determine the maximum supported post size")
}
// Assume a worst-case representation of four bytes per rune.
maxPostSize := int(maxPostSizeBytes) / 4
// To maintain backwards compatibility, don't yield a maximum post
// size smaller than the previous limit, even though it wasn't
// actually possible to store 4000 runes in all cases.
if maxPostSize < model.PostMessageMaxRunesV1 {
maxPostSize = model.PostMessageMaxRunesV1
if maxPostSize < model.PostMessageMaxRunesV2 {
maxPostSize = model.PostMessageMaxRunesV2
}
mlog.Info("Post.Message has size restrictions", mlog.Int("max_characters", maxPostSize), mlog.Int("max_bytes", maxPostSizeBytes))

Просмотреть файл

@@ -4314,8 +4314,7 @@ func testPostStoreGetOldest(t *testing.T, rctx request.CTX, ss store.Store) {
assert.EqualValues(t, o2.Id, r1.Id)
}
func testGetMaxPostSize(t *testing.T, rctx request.CTX, ss store.Store) {
assert.Equal(t, model.PostMessageMaxRunesV2, ss.Post().GetMaxPostSize())
func testGetMaxPostSize(t *testing.T, _ request.CTX, ss store.Store) {
assert.Equal(t, model.PostMessageMaxRunesV2, ss.Post().GetMaxPostSize())
}