Fix errcheck issues in server/channels/jobs/schedulers_test.go (#28970)

This commit is contained in:
Pratham Mahajan 2024-11-04 16:55:09 +05:30 committed by GitHub
parent 59c42c06ef
commit cb32e8baea
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 36 additions and 13 deletions

View file

@ -192,7 +192,6 @@ issues:
channels/jobs/hosted_purchase_screening/worker.go|\
channels/jobs/jobs.go|\
channels/jobs/resend_invitation_email/worker.go|\
channels/jobs/schedulers_test.go|\
channels/manualtesting/manual_testing.go|\
channels/store/localcachelayer/channel_layer.go|\
channels/store/localcachelayer/channel_layer_test.go|\

View file

@ -68,10 +68,14 @@ func TestScheduler(t *testing.T) {
jobServer.RegisterJobType(model.JobTypeMessageExport, nil, new(MockScheduler))
t.Run("Base", func(t *testing.T) {
jobServer.StartSchedulers()
err := jobServer.StartSchedulers()
require.NoError(t, err)
time.Sleep(2 * time.Second)
jobServer.StopSchedulers()
err = jobServer.StopSchedulers()
require.NoError(t, err)
// They should be all on here
for _, element := range jobServer.schedulers.nextRunTimes {
assert.NotNil(t, element)
@ -80,10 +84,15 @@ func TestScheduler(t *testing.T) {
t.Run("ClusterLeaderChanged", func(t *testing.T) {
jobServer.initSchedulers()
jobServer.StartSchedulers()
err := jobServer.StartSchedulers()
require.NoError(t, err)
time.Sleep(2 * time.Second)
jobServer.HandleClusterLeaderChange(false)
jobServer.StopSchedulers()
err = jobServer.StopSchedulers()
require.NoError(t, err)
// They should be turned off
for _, element := range jobServer.schedulers.nextRunTimes {
assert.Nil(t, element)
@ -93,9 +102,13 @@ func TestScheduler(t *testing.T) {
t.Run("ClusterLeaderChangedBeforeStart", func(t *testing.T) {
jobServer.initSchedulers()
jobServer.HandleClusterLeaderChange(false)
jobServer.StartSchedulers()
err := jobServer.StartSchedulers()
require.NoError(t, err)
time.Sleep(2 * time.Second)
jobServer.StopSchedulers()
err = jobServer.StopSchedulers()
require.NoError(t, err)
for _, element := range jobServer.schedulers.nextRunTimes {
assert.Nil(t, element)
}
@ -105,9 +118,13 @@ func TestScheduler(t *testing.T) {
jobServer.initSchedulers()
jobServer.HandleClusterLeaderChange(false)
jobServer.HandleClusterLeaderChange(true)
jobServer.StartSchedulers()
err := jobServer.StartSchedulers()
require.NoError(t, err)
time.Sleep(2 * time.Second)
jobServer.StopSchedulers()
err = jobServer.StopSchedulers()
require.NoError(t, err)
for _, element := range jobServer.schedulers.nextRunTimes {
assert.NotNil(t, element)
}
@ -115,12 +132,16 @@ func TestScheduler(t *testing.T) {
t.Run("ConfigChanged", func(t *testing.T) {
jobServer.initSchedulers()
jobServer.StartSchedulers()
err := jobServer.StartSchedulers()
require.NoError(t, err)
time.Sleep(2 * time.Second)
jobServer.HandleClusterLeaderChange(false)
// After running a config change, they should stay off
jobServer.schedulers.handleConfigChange(nil, nil)
jobServer.StopSchedulers()
err = jobServer.StopSchedulers()
require.NoError(t, err)
for _, element := range jobServer.schedulers.nextRunTimes {
assert.Nil(t, element)
}
@ -128,14 +149,17 @@ func TestScheduler(t *testing.T) {
t.Run("ConfigChangedDeadlock", func(t *testing.T) {
jobServer.initSchedulers()
jobServer.StartSchedulers()
err := jobServer.StartSchedulers()
require.NoError(t, err)
time.Sleep(2 * time.Second)
var wg sync.WaitGroup
wg.Add(2)
go func() {
defer wg.Done()
jobServer.StopSchedulers()
err := jobServer.StopSchedulers()
require.NoError(t, err)
}()
go func() {
defer wg.Done()