Fix errcheck issues in server/channels/jobs/schedulers_test.go (#28970)
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
59c42c06ef
Коммит
cb32e8baea
@@ -192,7 +192,6 @@ issues:
|
|||||||
channels/jobs/hosted_purchase_screening/worker.go|\
|
channels/jobs/hosted_purchase_screening/worker.go|\
|
||||||
channels/jobs/jobs.go|\
|
channels/jobs/jobs.go|\
|
||||||
channels/jobs/resend_invitation_email/worker.go|\
|
channels/jobs/resend_invitation_email/worker.go|\
|
||||||
channels/jobs/schedulers_test.go|\
|
|
||||||
channels/manualtesting/manual_testing.go|\
|
channels/manualtesting/manual_testing.go|\
|
||||||
channels/store/localcachelayer/channel_layer.go|\
|
channels/store/localcachelayer/channel_layer.go|\
|
||||||
channels/store/localcachelayer/channel_layer_test.go|\
|
channels/store/localcachelayer/channel_layer_test.go|\
|
||||||
|
|||||||
@@ -68,10 +68,14 @@ func TestScheduler(t *testing.T) {
|
|||||||
jobServer.RegisterJobType(model.JobTypeMessageExport, nil, new(MockScheduler))
|
jobServer.RegisterJobType(model.JobTypeMessageExport, nil, new(MockScheduler))
|
||||||
|
|
||||||
t.Run("Base", func(t *testing.T) {
|
t.Run("Base", func(t *testing.T) {
|
||||||
jobServer.StartSchedulers()
|
err := jobServer.StartSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
time.Sleep(2 * time.Second)
|
time.Sleep(2 * time.Second)
|
||||||
|
|
||||||
jobServer.StopSchedulers()
|
err = jobServer.StopSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
// They should be all on here
|
// They should be all on here
|
||||||
for _, element := range jobServer.schedulers.nextRunTimes {
|
for _, element := range jobServer.schedulers.nextRunTimes {
|
||||||
assert.NotNil(t, element)
|
assert.NotNil(t, element)
|
||||||
@@ -80,10 +84,15 @@ func TestScheduler(t *testing.T) {
|
|||||||
|
|
||||||
t.Run("ClusterLeaderChanged", func(t *testing.T) {
|
t.Run("ClusterLeaderChanged", func(t *testing.T) {
|
||||||
jobServer.initSchedulers()
|
jobServer.initSchedulers()
|
||||||
jobServer.StartSchedulers()
|
err := jobServer.StartSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
time.Sleep(2 * time.Second)
|
time.Sleep(2 * time.Second)
|
||||||
jobServer.HandleClusterLeaderChange(false)
|
jobServer.HandleClusterLeaderChange(false)
|
||||||
jobServer.StopSchedulers()
|
|
||||||
|
err = jobServer.StopSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
// They should be turned off
|
// They should be turned off
|
||||||
for _, element := range jobServer.schedulers.nextRunTimes {
|
for _, element := range jobServer.schedulers.nextRunTimes {
|
||||||
assert.Nil(t, element)
|
assert.Nil(t, element)
|
||||||
@@ -93,9 +102,13 @@ func TestScheduler(t *testing.T) {
|
|||||||
t.Run("ClusterLeaderChangedBeforeStart", func(t *testing.T) {
|
t.Run("ClusterLeaderChangedBeforeStart", func(t *testing.T) {
|
||||||
jobServer.initSchedulers()
|
jobServer.initSchedulers()
|
||||||
jobServer.HandleClusterLeaderChange(false)
|
jobServer.HandleClusterLeaderChange(false)
|
||||||
jobServer.StartSchedulers()
|
err := jobServer.StartSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
time.Sleep(2 * time.Second)
|
time.Sleep(2 * time.Second)
|
||||||
jobServer.StopSchedulers()
|
err = jobServer.StopSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
for _, element := range jobServer.schedulers.nextRunTimes {
|
for _, element := range jobServer.schedulers.nextRunTimes {
|
||||||
assert.Nil(t, element)
|
assert.Nil(t, element)
|
||||||
}
|
}
|
||||||
@@ -105,9 +118,13 @@ func TestScheduler(t *testing.T) {
|
|||||||
jobServer.initSchedulers()
|
jobServer.initSchedulers()
|
||||||
jobServer.HandleClusterLeaderChange(false)
|
jobServer.HandleClusterLeaderChange(false)
|
||||||
jobServer.HandleClusterLeaderChange(true)
|
jobServer.HandleClusterLeaderChange(true)
|
||||||
jobServer.StartSchedulers()
|
err := jobServer.StartSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
time.Sleep(2 * time.Second)
|
time.Sleep(2 * time.Second)
|
||||||
jobServer.StopSchedulers()
|
err = jobServer.StopSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
for _, element := range jobServer.schedulers.nextRunTimes {
|
for _, element := range jobServer.schedulers.nextRunTimes {
|
||||||
assert.NotNil(t, element)
|
assert.NotNil(t, element)
|
||||||
}
|
}
|
||||||
@@ -115,12 +132,16 @@ func TestScheduler(t *testing.T) {
|
|||||||
|
|
||||||
t.Run("ConfigChanged", func(t *testing.T) {
|
t.Run("ConfigChanged", func(t *testing.T) {
|
||||||
jobServer.initSchedulers()
|
jobServer.initSchedulers()
|
||||||
jobServer.StartSchedulers()
|
err := jobServer.StartSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
time.Sleep(2 * time.Second)
|
time.Sleep(2 * time.Second)
|
||||||
jobServer.HandleClusterLeaderChange(false)
|
jobServer.HandleClusterLeaderChange(false)
|
||||||
// After running a config change, they should stay off
|
// After running a config change, they should stay off
|
||||||
jobServer.schedulers.handleConfigChange(nil, nil)
|
jobServer.schedulers.handleConfigChange(nil, nil)
|
||||||
jobServer.StopSchedulers()
|
err = jobServer.StopSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
for _, element := range jobServer.schedulers.nextRunTimes {
|
for _, element := range jobServer.schedulers.nextRunTimes {
|
||||||
assert.Nil(t, element)
|
assert.Nil(t, element)
|
||||||
}
|
}
|
||||||
@@ -128,14 +149,17 @@ func TestScheduler(t *testing.T) {
|
|||||||
|
|
||||||
t.Run("ConfigChangedDeadlock", func(t *testing.T) {
|
t.Run("ConfigChangedDeadlock", func(t *testing.T) {
|
||||||
jobServer.initSchedulers()
|
jobServer.initSchedulers()
|
||||||
jobServer.StartSchedulers()
|
err := jobServer.StartSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
time.Sleep(2 * time.Second)
|
time.Sleep(2 * time.Second)
|
||||||
|
|
||||||
var wg sync.WaitGroup
|
var wg sync.WaitGroup
|
||||||
wg.Add(2)
|
wg.Add(2)
|
||||||
go func() {
|
go func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
jobServer.StopSchedulers()
|
err := jobServer.StopSchedulers()
|
||||||
|
require.NoError(t, err)
|
||||||
}()
|
}()
|
||||||
go func() {
|
go func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user