MCPcopy Create free account
hub / github.com/riverqueue/river / Test_NewClient_Defaults

Function Test_NewClient_Defaults

client_test.go:8053–8108  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

8051}
8052
8053func Test_NewClient_Defaults(t *testing.T) {
8054 t.Parallel()
8055
8056 ctx := context.Background()
8057
8058 var (
8059 dbPool = riversharedtest.DBPool(ctx, t)
8060 driver = riverpgxv5.New(dbPool)
8061 schema = riverdbtest.TestSchema(ctx, t, driver, nil)
8062 )
8063
8064 workers := NewWorkers()
8065 AddWorker(workers, &noOpWorker{})
8066
8067 client, err := NewClient(driver, &Config{
8068 Queues: map[string]QueueConfig{QueueDefault: {MaxWorkers: 1}},
8069 Schema: schema,
8070 Workers: workers,
8071 })
8072 require.NoError(t, err)
8073
8074 require.Zero(t, client.config.AdvisoryLockPrefix)
8075
8076 jobCleaner := maintenance.GetService[*maintenance.JobCleaner](client.queueMaintainer)
8077 require.Equal(t, riversharedmaintenance.CancelledJobRetentionPeriodDefault, jobCleaner.Config.CancelledJobRetentionPeriod)
8078 require.Equal(t, riversharedmaintenance.CompletedJobRetentionPeriodDefault, jobCleaner.Config.CompletedJobRetentionPeriod)
8079 require.Equal(t, riversharedmaintenance.DiscardedJobRetentionPeriodDefault, jobCleaner.Config.DiscardedJobRetentionPeriod)
8080 require.Equal(t, riversharedmaintenance.JobCleanerTimeoutDefault, jobCleaner.Config.Timeout)
8081 require.False(t, jobCleaner.StaggerStartupIsDisabled())
8082
8083 enqueuer := maintenance.GetService[*maintenance.PeriodicJobEnqueuer](client.queueMaintainer)
8084 require.Zero(t, enqueuer.Config.AdvisoryLockPrefix)
8085 require.False(t, enqueuer.StaggerStartupIsDisabled())
8086
8087 reindexer := maintenance.GetService[*maintenance.Reindexer](client.queueMaintainer)
8088 require.Equal(t, ReindexerIndexNamesDefault(), client.config.ReindexerIndexNames)
8089 require.Equal(t, ReindexerIndexNamesDefault(), reindexer.Config.IndexNames)
8090 now := time.Now().UTC()
8091 nextMidnight := time.Date(now.Year(), now.Month(), now.Day(), 0, 0, 0, 0, time.UTC).AddDate(0, 0, 1)
8092 require.Equal(t, nextMidnight, reindexer.Config.ScheduleFunc(now))
8093
8094 require.Nil(t, client.config.ErrorHandler)
8095 require.Equal(t, FetchCooldownDefault, client.config.FetchCooldown)
8096 require.Equal(t, FetchPollIntervalDefault, client.config.FetchPollInterval)
8097 require.Nil(t, client.config.JobStuckHandler)
8098 require.Equal(t, JobStuckThresholdDefault, client.config.JobStuckThreshold)
8099 require.Equal(t, JobTimeoutDefault, client.config.JobTimeout)
8100 require.Nil(t, client.config.Hooks)
8101 require.NotZero(t, client.baseService.Logger)
8102 require.Equal(t, MaxAttemptsDefault, client.config.MaxAttempts)
8103 require.Equal(t, maintenance.ReindexerTimeoutDefault, client.config.ReindexerTimeout)
8104 require.IsType(t, &DefaultClientRetryPolicy{}, client.config.RetryPolicy)
8105 require.False(t, client.config.SkipUnknownJobCheck)
8106 require.IsType(t, nil, client.config.Test.Time)
8107 require.IsType(t, &baseservice.UnStubbableTimeGenerator{}, client.baseService.Time)
8108}
8109
8110func Test_NewClient_Overrides(t *testing.T) {

Callers

nothing calls this directly

Calls 9

DBPoolFunction · 0.92
NewFunction · 0.92
TestSchemaFunction · 0.92
NewWorkersFunction · 0.85
AddWorkerFunction · 0.85
NewClientFunction · 0.85
NowMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…