[MM-62408] Server Code Coverage with Fully Parallel Tests (#30078)

* TestPool

* Store infra

* Store tests updates

* Bump maximum concurrent postgres connections

* More infra

* channels/jobs

* channels/app

* channels/api4

* Protect i18n from concurrent access

* Replace some use of os.Setenv

* Remove debug

* Lint fixes

* Fix more linting

* Fix test

* Remove use of Setenv in drafts tests

* Fix flaky TestWebHubCloseConnOnDBFail

* Fix merge

* [MM-62408] Add CI job to generate test coverage (#30284)

* Add CI job to generate test coverage

* Remove use of Setenv in drafts tests

* Fix flaky TestWebHubCloseConnOnDBFail

* Fix more Setenv usage

* Fix more potential flakyness

* Remove parallelism from flaky test

* Remove conflicting env var

* Fix

* Disable parallelism

* Test atomic covermode

* Disable parallelism

* Enable parallelism

* Add upload coverage step

* Fix codecov.yml

* Add codecov.yml

* Remove redundant workspace field

* Add Parallel() util methods and refactor

* Fix formatting

* More formatting fixes

* Fix reporting
Этот коммит содержится в:
Claudio Costa
2025-05-30 05:58:26 -06:00
коммит произвёл GitHub
родитель 1cf2f08108
Коммит 611b2a8e79
191 изменённых файлов: 2719 добавлений и 496 удалений

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

@@ -18,9 +18,7 @@ import (
"github.com/mattermost/mattermost/server/public/model"
)
var (
rnd = rand.New(rand.NewSource(time.Now().UnixNano()))
)
var rnd = rand.New(rand.NewSource(time.Now().UnixNano()))
func setupForSharedChannels(tb testing.TB) *TestHelper {
th := SetupConfig(tb, func(cfg *model.Config) {
@@ -36,6 +34,7 @@ func setupForSharedChannels(tb testing.TB) *TestHelper {
}
func TestGetAllSharedChannels(t *testing.T) {
mainHelper.Parallel(t)
th := setupForSharedChannels(t).InitBasic()
defer th.TearDown()
@@ -107,6 +106,7 @@ func randomBool() bool {
}
func TestGetRemoteClusterById(t *testing.T) {
mainHelper.Parallel(t)
th := setupForSharedChannels(t).InitBasic()
defer th.TearDown()
@@ -161,6 +161,7 @@ func TestGetRemoteClusterById(t *testing.T) {
}
func TestCreateDirectChannelWithRemoteUser(t *testing.T) {
mainHelper.Parallel(t)
t.Run("should not create a local DM channel that is shared", func(t *testing.T) {
th := setupForSharedChannels(t).InitBasic()
defer th.TearDown()
@@ -276,6 +277,7 @@ func TestCreateDirectChannelWithRemoteUser(t *testing.T) {
}
func TestGetSharedChannelRemotesByRemoteCluster(t *testing.T) {
mainHelper.Parallel(t)
t.Run("Should not work if the remote cluster service is not enabled", func(t *testing.T) {
th := Setup(t)
defer th.TearDown()
@@ -534,6 +536,7 @@ func TestGetSharedChannelRemotesByRemoteCluster(t *testing.T) {
}
func TestInviteRemoteClusterToChannel(t *testing.T) {
mainHelper.Parallel(t)
t.Run("Should not work if the remote cluster service is not enabled", func(t *testing.T) {
th := Setup(t)
defer th.TearDown()
@@ -579,6 +582,7 @@ func TestInviteRemoteClusterToChannel(t *testing.T) {
}
func TestUninviteRemoteClusterToChannel(t *testing.T) {
mainHelper.Parallel(t)
t.Run("Should not work if the remote cluster service is not enabled", func(t *testing.T) {
th := Setup(t)
defer th.TearDown()