@@ -11,7 +11,7 @@ import (
1111 "github.com/charmbracelet/catwalk/pkg/catwalk"
1212 "github.com/charmbracelet/crush/internal/csync"
1313 "github.com/charmbracelet/crush/internal/env"
14− "github.com/stretchr/testify/assert"
14+ "github.com/stretchr/testify/require"
1515)
1616
1717func TestMain(m *testing.M) {
@@ -28,12 +28,12 @@ func TestConfig_LoadFromReaders(t *testing.T) {
2828
2929 loadedConfig, err := loadFromReaders([]io.Reader{data1, data2, data3})
3030
31− assert.NoError(t, err)
32− assert.NotNil(t, loadedConfig)
33− assert.Equal(t, 1, loadedConfig.Providers.Len())
31+ require.NoError(t, err)
32+ require.NotNil(t, loadedConfig)
33+ require.Equal(t, 1, loadedConfig.Providers.Len())
3434 pc, _ := loadedConfig.Providers.Get("openai")
35− assert.Equal(t, "key2", pc.APIKey)
36− assert.Equal(t, "https://api.openai.com/v2", pc.BaseURL)
35+ require.Equal(t, "key2", pc.APIKey)
36+ require.Equal(t, "https://api.openai.com/v2", pc.BaseURL)
3737}
3838
3939func TestConfig_setDefaults(t *testing.T) {
@@ -41,18 +41,18 @@ func TestConfig_setDefaults(t *testing.T) {
4141
4242 cfg.setDefaults("/tmp")
4343
44− assert.NotNil(t, cfg.Options)
45− assert.NotNil(t, cfg.Options.TUI)
46− assert.NotNil(t, cfg.Options.ContextPaths)
47− assert.NotNil(t, cfg.Providers)
48− assert.NotNil(t, cfg.Models)
49− assert.NotNil(t, cfg.LSP)
50− assert.NotNil(t, cfg.MCP)
51− assert.Equal(t, filepath.Join("/tmp", ".crush"), cfg.Options.DataDirectory)
44+ require.NotNil(t, cfg.Options)
45+ require.NotNil(t, cfg.Options.TUI)
46+ require.NotNil(t, cfg.Options.ContextPaths)
47+ require.NotNil(t, cfg.Providers)
48+ require.NotNil(t, cfg.Models)
49+ require.NotNil(t, cfg.LSP)
50+ require.NotNil(t, cfg.MCP)
51+ require.Equal(t, filepath.Join("/tmp", ".crush"), cfg.Options.DataDirectory)
5252 for _, path := range defaultContextPaths {
53− assert.Contains(t, cfg.Options.ContextPaths, path)
53+ require.Contains(t, cfg.Options.ContextPaths, path)
5454 }
55− assert.Equal(t, "/tmp", cfg.workingDir)
55+ require.Equal(t, "/tmp", cfg.workingDir)
5656}
5757
5858func TestConfig_configureProviders(t *testing.T) {
@@ -74,12 +74,12 @@ func TestConfig_configureProviders(t *testing.T) {
7474 })
7575 resolver := NewEnvironmentVariableResolver(env)
7676 err := cfg.configureProviders(env, resolver, knownProviders)
77− assert.NoError(t, err)
78− assert.Equal(t, 1, cfg.Providers.Len())
77+ require.NoError(t, err)
78+ require.Equal(t, 1, cfg.Providers.Len())
7979
8080 // We want to make sure that we keep the configured API key as a placeholder
8181 pc, _ := cfg.Providers.Get("openai")
82− assert.Equal(t, "$OPENAI_API_KEY", pc.APIKey)
82+ require.Equal(t, "$OPENAI_API_KEY", pc.APIKey)
8383}
8484
8585func TestConfig_configureProvidersWithOverride(t *testing.T) {
@@ -117,15 +117,15 @@ func TestConfig_configureProvidersWithOverride(t *testing.T) {
117117 })
118118 resolver := NewEnvironmentVariableResolver(env)
119119 err := cfg.configureProviders(env, resolver, knownProviders)
120− assert.NoError(t, err)
121− assert.Equal(t, 1, cfg.Providers.Len())
120+ require.NoError(t, err)
121+ require.Equal(t, 1, cfg.Providers.Len())
122122
123123 // We want to make sure that we keep the configured API key as a placeholder
124124 pc, _ := cfg.Providers.Get("openai")
125− assert.Equal(t, "xyz", pc.APIKey)
126− assert.Equal(t, "https://api.openai.com/v2", pc.BaseURL)
127− assert.Len(t, pc.Models, 2)
128− assert.Equal(t, "Updated", pc.Models[0].Name)
125+ require.Equal(t, "xyz", pc.APIKey)
126+ require.Equal(t, "https://api.openai.com/v2", pc.BaseURL)
127+ require.Len(t, pc.Models, 2)
128+ require.Equal(t, "Updated", pc.Models[0].Name)
129129}
130130
131131func TestConfig_configureProvidersWithNewProvider(t *testing.T) {
@@ -159,20 +159,20 @@ func TestConfig_configureProvidersWithNewProvider(t *testing.T) {
159159 })
160160 resolver := NewEnvironmentVariableResolver(env)
161161 err := cfg.configureProviders(env, resolver, knownProviders)
162− assert.NoError(t, err)
162+ require.NoError(t, err)
163163 // Should be to because of the env variable
164− assert.Equal(t, cfg.Providers.Len(), 2)
164+ require.Equal(t, cfg.Providers.Len(), 2)
165165
166166 // We want to make sure that we keep the configured API key as a placeholder
167167 pc, _ := cfg.Providers.Get("custom")
168− assert.Equal(t, "xyz", pc.APIKey)
168+ require.Equal(t, "xyz", pc.APIKey)
169169 // Make sure we set the ID correctly
170− assert.Equal(t, "custom", pc.ID)
171− assert.Equal(t, "https://api.someendpoint.com/v2", pc.BaseURL)
172− assert.Len(t, pc.Models, 1)
170+ require.Equal(t, "custom", pc.ID)
171+ require.Equal(t, "https://api.someendpoint.com/v2", pc.BaseURL)
172+ require.Len(t, pc.Models, 1)
173173
174174 _, ok := cfg.Providers.Get("openai")
175− assert.True(t, ok, "OpenAI provider should still be present")
175+ require.True(t, ok, "OpenAI provider should still be present")
176176}
177177
178178func TestConfig_configureProvidersBedrockWithCredentials(t *testing.T) {
@@ -195,13 +195,13 @@ func TestConfig_configureProvidersBedrockWithCredentials(t *testing.T) {
195195 })
196196 resolver := NewEnvironmentVariableResolver(env)
197197 err := cfg.configureProviders(env, resolver, knownProviders)
198− assert.NoError(t, err)
199− assert.Equal(t, cfg.Providers.Len(), 1)
198+ require.NoError(t, err)
199+ require.Equal(t, cfg.Providers.Len(), 1)
200200
201201 bedrockProvider, ok := cfg.Providers.Get("bedrock")
202− assert.True(t, ok, "Bedrock provider should be present")
203− assert.Len(t, bedrockProvider.Models, 1)
204− assert.Equal(t, "anthropic.claude-sonnet-4-20250514-v1:0", bedrockProvider.Models[0].ID)
202+ require.True(t, ok, "Bedrock provider should be present")
203+ require.Len(t, bedrockProvider.Models, 1)
204+ require.Equal(t, "anthropic.claude-sonnet-4-20250514-v1:0", bedrockProvider.Models[0].ID)
205205}
206206
207207func TestConfig_configureProvidersBedrockWithoutCredentials(t *testing.T) {
@@ -221,9 +221,9 @@ func TestConfig_configureProvidersBedrockWithoutCredentials(t *testing.T) {
221221 env := env.NewFromMap(map[string]string{})
222222 resolver := NewEnvironmentVariableResolver(env)
223223 err := cfg.configureProviders(env, resolver, knownProviders)
224− assert.NoError(t, err)
224+ require.NoError(t, err)
225225 // Provider should not be configured without credentials
226− assert.Equal(t, cfg.Providers.Len(), 0)
226+ require.Equal(t, cfg.Providers.Len(), 0)
227227}
228228
229229func TestConfig_configureProvidersBedrockWithoutUnsupportedModel(t *testing.T) {
@@ -246,7 +246,7 @@ func TestConfig_configureProvidersBedrockWithoutUnsupportedModel(t *testing.T) {
246246 })
247247 resolver := NewEnvironmentVariableResolver(env)
248248 err := cfg.configureProviders(env, resolver, knownProviders)
249− assert.Error(t, err)
249+ require.Error(t, err)
250250}
251251
252252func TestConfig_configureProvidersVertexAIWithCredentials(t *testing.T) {
@@ -270,15 +270,15 @@ func TestConfig_configureProvidersVertexAIWithCredentials(t *testing.T) {
270270 })
271271 resolver := NewEnvironmentVariableResolver(env)
272272 err := cfg.configureProviders(env, resolver, knownProviders)
273− assert.NoError(t, err)
274− assert.Equal(t, cfg.Providers.Len(), 1)
273+ require.NoError(t, err)
274+ require.Equal(t, cfg.Providers.Len(), 1)
275275
276276 vertexProvider, ok := cfg.Providers.Get("vertexai")
277− assert.True(t, ok, "VertexAI provider should be present")
278− assert.Len(t, vertexProvider.Models, 1)
279− assert.Equal(t, "gemini-pro", vertexProvider.Models[0].ID)
280− assert.Equal(t, "test-project", vertexProvider.ExtraParams["project"])
281− assert.Equal(t, "us-central1", vertexProvider.ExtraParams["location"])
277+ require.True(t, ok, "VertexAI provider should be present")
278+ require.Len(t, vertexProvider.Models, 1)
279+ require.Equal(t, "gemini-pro", vertexProvider.Models[0].ID)
280+ require.Equal(t, "test-project", vertexProvider.ExtraParams["project"])
281+ require.Equal(t, "us-central1", vertexProvider.ExtraParams["location"])
282282}
283283
284284func TestConfig_configureProvidersVertexAIWithoutCredentials(t *testing.T) {
@@ -302,9 +302,9 @@ func TestConfig_configureProvidersVertexAIWithoutCredentials(t *testing.T) {
302302 })
303303 resolver := NewEnvironmentVariableResolver(env)
304304 err := cfg.configureProviders(env, resolver, knownProviders)
305− assert.NoError(t, err)
305+ require.NoError(t, err)
306306 // Provider should not be configured without proper credentials
307− assert.Equal(t, cfg.Providers.Len(), 0)
307+ require.Equal(t, cfg.Providers.Len(), 0)
308308}
309309
310310func TestConfig_configureProvidersVertexAIMissingProject(t *testing.T) {
@@ -327,9 +327,9 @@ func TestConfig_configureProvidersVertexAIMissingProject(t *testing.T) {
327327 })
328328 resolver := NewEnvironmentVariableResolver(env)
329329 err := cfg.configureProviders(env, resolver, knownProviders)
330− assert.NoError(t, err)
330+ require.NoError(t, err)
331331 // Provider should not be configured without project
332− assert.Equal(t, cfg.Providers.Len(), 0)
332+ require.Equal(t, cfg.Providers.Len(), 0)
333333}
334334
335335func TestConfig_configureProvidersSetProviderID(t *testing.T) {
@@ -351,12 +351,12 @@ func TestConfig_configureProvidersSetProviderID(t *testing.T) {
351351 })
352352 resolver := NewEnvironmentVariableResolver(env)
353353 err := cfg.configureProviders(env, resolver, knownProviders)
354− assert.NoError(t, err)
355− assert.Equal(t, cfg.Providers.Len(), 1)
354+ require.NoError(t, err)
355+ require.Equal(t, cfg.Providers.Len(), 1)
356356
357357 // Provider ID should be set
358358 pc, _ := cfg.Providers.Get("openai")
359− assert.Equal(t, "openai", pc.ID)
359+ require.Equal(t, "openai", pc.ID)
360360}
361361
362362func TestConfig_EnabledProviders(t *testing.T) {
@@ -377,7 +377,7 @@ func TestConfig_EnabledProviders(t *testing.T) {
377377 }
378378
379379 enabled := cfg.EnabledProviders()
380− assert.Len(t, enabled, 2)
380+ require.Len(t, enabled, 2)
381381 })
382382
383383 t.Run("some providers disabled", func(t *testing.T) {
@@ -397,8 +397,8 @@ func TestConfig_EnabledProviders(t *testing.T) {
397397 }
398398
399399 enabled := cfg.EnabledProviders()
400− assert.Len(t, enabled, 1)
401− assert.Equal(t, "openai", enabled[0].ID)
400+ require.Len(t, enabled, 1)
401+ require.Equal(t, "openai", enabled[0].ID)
402402 })
403403
404404 t.Run("empty providers map", func(t *testing.T) {
@@ -407,7 +407,7 @@ func TestConfig_EnabledProviders(t *testing.T) {
407407 }
408408
409409 enabled := cfg.EnabledProviders()
410− assert.Len(t, enabled, 0)
410+ require.Len(t, enabled, 0)
411411 })
412412}
413413
@@ -423,7 +423,7 @@ func TestConfig_IsConfigured(t *testing.T) {
423423 }),
424424 }
425425
426− assert.True(t, cfg.IsConfigured())
426+ require.True(t, cfg.IsConfigured())
427427 })
428428
429429 t.Run("returns false when no providers are configured", func(t *testing.T) {
@@ -431,7 +431,7 @@ func TestConfig_IsConfigured(t *testing.T) {
431431 Providers: csync.NewMap[string, ProviderConfig](),
432432 }
433433
434− assert.False(t, cfg.IsConfigured())
434+ require.False(t, cfg.IsConfigured())
435435 })
436436
437437 t.Run("returns false when all providers are disabled", func(t *testing.T) {
@@ -450,7 +450,7 @@ func TestConfig_IsConfigured(t *testing.T) {
450450 }),
451451 }
452452
453− assert.False(t, cfg.IsConfigured())
453+ require.False(t, cfg.IsConfigured())
454454 })
455455}
456456
@@ -480,12 +480,12 @@ func TestConfig_configureProvidersWithDisabledProvider(t *testing.T) {
480480 })
481481 resolver := NewEnvironmentVariableResolver(env)
482482 err := cfg.configureProviders(env, resolver, knownProviders)
483− assert.NoError(t, err)
483+ require.NoError(t, err)
484484
485485 // Provider should be removed from config when disabled
486− assert.Equal(t, cfg.Providers.Len(), 0)
486+ require.Equal(t, cfg.Providers.Len(), 0)
487487 _, exists := cfg.Providers.Get("openai")
488− assert.False(t, exists)
488+ require.False(t, exists)
489489}
490490
491491func TestConfig_configureProvidersCustomProviderValidation(t *testing.T) {
@@ -508,11 +508,11 @@ func TestConfig_configureProvidersCustomProviderValidation(t *testing.T) {
508508 env := env.NewFromMap(map[string]string{})
509509 resolver := NewEnvironmentVariableResolver(env)
510510 err := cfg.configureProviders(env, resolver, []catwalk.Provider{})
511− assert.NoError(t, err)
511+ require.NoError(t, err)
512512
513− assert.Equal(t, cfg.Providers.Len(), 1)
513+ require.Equal(t, cfg.Providers.Len(), 1)
514514 _, exists := cfg.Providers.Get("custom")
515− assert.True(t, exists)
515+ require.True(t, exists)
516516 })
517517
518518 t.Run("custom provider with missing BaseURL is removed", func(t *testing.T) {
@@ -531,11 +531,11 @@ func TestConfig_configureProvidersCustomProviderValidation(t *testing.T) {
531531 env := env.NewFromMap(map[string]string{})
532532 resolver := NewEnvironmentVariableResolver(env)
533533 err := cfg.configureProviders(env, resolver, []catwalk.Provider{})
534− assert.NoError(t, err)
534+ require.NoError(t, err)
535535
536− assert.Equal(t, cfg.Providers.Len(), 0)
536+ require.Equal(t, cfg.Providers.Len(), 0)
537537 _, exists := cfg.Providers.Get("custom")
538− assert.False(t, exists)
538+ require.False(t, exists)
539539 })
540540
541541 t.Run("custom provider with no models is removed", func(t *testing.T) {
@@ -553,11 +553,11 @@ func TestConfig_configureProvidersCustomProviderValidation(t *testing.T) {
553553 env := env.NewFromMap(map[string]string{})
554554 resolver := NewEnvironmentVariableResolver(env)
555555 err := cfg.configureProviders(env, resolver, []catwalk.Provider{})
556− assert.NoError(t, err)
556+ require.NoError(t, err)
557557
558− assert.Equal(t, cfg.Providers.Len(), 0)
558+ require.Equal(t, cfg.Providers.Len(), 0)
559559 _, exists := cfg.Providers.Get("custom")
560− assert.False(t, exists)
560+ require.False(t, exists)
561561 })
562562
563563 t.Run("custom provider with unsupported type is removed", func(t *testing.T) {
@@ -578,11 +578,11 @@ func TestConfig_configureProvidersCustomProviderValidation(t *testing.T) {
578578 env := env.NewFromMap(map[string]string{})
579579 resolver := NewEnvironmentVariableResolver(env)
580580 err := cfg.configureProviders(env, resolver, []catwalk.Provider{})
581− assert.NoError(t, err)
581+ require.NoError(t, err)
582582
583− assert.Equal(t, cfg.Providers.Len(), 0)
583+ require.Equal(t, cfg.Providers.Len(), 0)
584584 _, exists := cfg.Providers.Get("custom")
585− assert.False(t, exists)
585+ require.False(t, exists)
586586 })
587587
588588 t.Run("valid custom provider is kept and ID is set", func(t *testing.T) {
@@ -603,14 +603,14 @@ func TestConfig_configureProvidersCustomProviderValidation(t *testing.T) {
603603 env := env.NewFromMap(map[string]string{})
604604 resolver := NewEnvironmentVariableResolver(env)
605605 err := cfg.configureProviders(env, resolver, []catwalk.Provider{})
606− assert.NoError(t, err)
606+ require.NoError(t, err)
607607
608− assert.Equal(t, cfg.Providers.Len(), 1)
608+ require.Equal(t, cfg.Providers.Len(), 1)
609609 customProvider, exists := cfg.Providers.Get("custom")
610− assert.True(t, exists)
611− assert.Equal(t, "custom", customProvider.ID)
612− assert.Equal(t, "test-key", customProvider.APIKey)
613− assert.Equal(t, "https://api.custom.com/v1", customProvider.BaseURL)
610+ require.True(t, exists)
611+ require.Equal(t, "custom", customProvider.ID)
612+ require.Equal(t, "test-key", customProvider.APIKey)
613+ require.Equal(t, "https://api.custom.com/v1", customProvider.BaseURL)
614614 })
615615
616616 t.Run("custom anthropic provider is supported", func(t *testing.T) {
@@ -631,15 +631,15 @@ func TestConfig_configureProvidersCustomProviderValidation(t *testing.T) {
631631 env := env.NewFromMap(map[string]string{})
632632 resolver := NewEnvironmentVariableResolver(env)
633633 err := cfg.configureProviders(env, resolver, []catwalk.Provider{})
634− assert.NoError(t, err)
634+ require.NoError(t, err)
635635
636− assert.Equal(t, cfg.Providers.Len(), 1)
636+ require.Equal(t, cfg.Providers.Len(), 1)
637637 customProvider, exists := cfg.Providers.Get("custom-anthropic")
638− assert.True(t, exists)
639− assert.Equal(t, "custom-anthropic", customProvider.ID)
640− assert.Equal(t, "test-key", customProvider.APIKey)
641− assert.Equal(t, "https://api.anthropic.com/v1", customProvider.BaseURL)
642− assert.Equal(t, catwalk.TypeAnthropic, customProvider.Type)
638+ require.True(t, exists)
639+ require.Equal(t, "custom-anthropic", customProvider.ID)
640+ require.Equal(t, "test-key", customProvider.APIKey)
641+ require.Equal(t, "https://api.anthropic.com/v1", customProvider.BaseURL)
642+ require.Equal(t, catwalk.TypeAnthropic, customProvider.Type)
643643 })
644644
645645 t.Run("disabled custom provider is removed", func(t *testing.T) {
@@ -661,11 +661,11 @@ func TestConfig_configureProvidersCustomProviderValidation(t *testing.T) {
661661 env := env.NewFromMap(map[string]string{})
662662 resolver := NewEnvironmentVariableResolver(env)
663663 err := cfg.configureProviders(env, resolver, []catwalk.Provider{})
664− assert.NoError(t, err)
664+ require.NoError(t, err)
665665
666− assert.Equal(t, cfg.Providers.Len(), 0)
666+ require.Equal(t, cfg.Providers.Len(), 0)
667667 _, exists := cfg.Providers.Get("custom")
668− assert.False(t, exists)
668+ require.False(t, exists)
669669 })
670670}
671671
@@ -696,11 +696,11 @@ func TestConfig_configureProvidersEnhancedCredentialValidation(t *testing.T) {
696696 })
697697 resolver := NewEnvironmentVariableResolver(env)
698698 err := cfg.configureProviders(env, resolver, knownProviders)
699− assert.NoError(t, err)
699+ require.NoError(t, err)
700700
701− assert.Equal(t, cfg.Providers.Len(), 0)
701+ require.Equal(t, cfg.Providers.Len(), 0)
702702 _, exists := cfg.Providers.Get("vertexai")
703− assert.False(t, exists)
703+ require.False(t, exists)
704704 })
705705
706706 t.Run("Bedrock provider removed when AWS credentials missing with existing config", func(t *testing.T) {
@@ -727,11 +727,11 @@ func TestConfig_configureProvidersEnhancedCredentialValidation(t *testing.T) {
727727 env := env.NewFromMap(map[string]string{})
728728 resolver := NewEnvironmentVariableResolver(env)
729729 err := cfg.configureProviders(env, resolver, knownProviders)
730− assert.NoError(t, err)
730+ require.NoError(t, err)
731731
732− assert.Equal(t, cfg.Providers.Len(), 0)
732+ require.Equal(t, cfg.Providers.Len(), 0)
733733 _, exists := cfg.Providers.Get("bedrock")
734− assert.False(t, exists)
734+ require.False(t, exists)
735735 })
736736
737737 t.Run("provider removed when API key missing with existing config", func(t *testing.T) {
@@ -758,11 +758,11 @@ func TestConfig_configureProvidersEnhancedCredentialValidation(t *testing.T) {
758758 env := env.NewFromMap(map[string]string{})
759759 resolver := NewEnvironmentVariableResolver(env)
760760 err := cfg.configureProviders(env, resolver, knownProviders)
761− assert.NoError(t, err)
761+ require.NoError(t, err)
762762
763− assert.Equal(t, cfg.Providers.Len(), 0)
763+ require.Equal(t, cfg.Providers.Len(), 0)
764764 _, exists := cfg.Providers.Get("openai")
765− assert.False(t, exists)
765+ require.False(t, exists)
766766 })
767767
768768 t.Run("known provider should still be added if the endpoint is missing the client will use default endpoints", func(t *testing.T) {
@@ -791,11 +791,11 @@ func TestConfig_configureProvidersEnhancedCredentialValidation(t *testing.T) {
791791 })
792792 resolver := NewEnvironmentVariableResolver(env)
793793 err := cfg.configureProviders(env, resolver, knownProviders)
794− assert.NoError(t, err)
794+ require.NoError(t, err)
795795
796− assert.Equal(t, cfg.Providers.Len(), 1)
796+ require.Equal(t, cfg.Providers.Len(), 1)
797797 _, exists := cfg.Providers.Get("openai")
798− assert.True(t, exists)
798+ require.True(t, exists)
799799 })
800800}
801801
@@ -825,16 +825,16 @@ func TestConfig_defaultModelSelection(t *testing.T) {
825825 env := env.NewFromMap(map[string]string{})
826826 resolver := NewEnvironmentVariableResolver(env)
827827 err := cfg.configureProviders(env, resolver, knownProviders)
828− assert.NoError(t, err)
828+ require.NoError(t, err)
829829
830830 large, small, err := cfg.defaultModelSelection(knownProviders)
831− assert.NoError(t, err)
832− assert.Equal(t, "large-model", large.Model)
833− assert.Equal(t, "openai", large.Provider)
834− assert.Equal(t, int64(1000), large.MaxTokens)
835− assert.Equal(t, "small-model", small.Model)
836− assert.Equal(t, "openai", small.Provider)
837− assert.Equal(t, int64(500), small.MaxTokens)
831+ require.NoError(t, err)
832+ require.Equal(t, "large-model", large.Model)
833+ require.Equal(t, "openai", large.Provider)
834+ require.Equal(t, int64(1000), large.MaxTokens)
835+ require.Equal(t, "small-model", small.Model)
836+ require.Equal(t, "openai", small.Provider)
837+ require.Equal(t, int64(500), small.MaxTokens)
838838 })
839839 t.Run("should error if no providers configured", func(t *testing.T) {
840840 knownProviders := []catwalk.Provider{
@@ -861,10 +861,10 @@ func TestConfig_defaultModelSelection(t *testing.T) {
861861 env := env.NewFromMap(map[string]string{})
862862 resolver := NewEnvironmentVariableResolver(env)
863863 err := cfg.configureProviders(env, resolver, knownProviders)
864− assert.NoError(t, err)
864+ require.NoError(t, err)
865865
866866 _, _, err = cfg.defaultModelSelection(knownProviders)
867− assert.Error(t, err)
867+ require.Error(t, err)
868868 })
869869 t.Run("should error if model is missing", func(t *testing.T) {
870870 knownProviders := []catwalk.Provider{
@@ -891,9 +891,9 @@ func TestConfig_defaultModelSelection(t *testing.T) {
891891 env := env.NewFromMap(map[string]string{})
892892 resolver := NewEnvironmentVariableResolver(env)
893893 err := cfg.configureProviders(env, resolver, knownProviders)
894− assert.NoError(t, err)
894+ require.NoError(t, err)
895895 _, _, err = cfg.defaultModelSelection(knownProviders)
896− assert.Error(t, err)
896+ require.Error(t, err)
897897 })
898898
899899 t.Run("should configure the default models with a custom provider", func(t *testing.T) {
@@ -934,15 +934,15 @@ func TestConfig_defaultModelSelection(t *testing.T) {
934934 env := env.NewFromMap(map[string]string{})
935935 resolver := NewEnvironmentVariableResolver(env)
936936 err := cfg.configureProviders(env, resolver, knownProviders)
937− assert.NoError(t, err)
937+ require.NoError(t, err)
938938 large, small, err := cfg.defaultModelSelection(knownProviders)
939− assert.NoError(t, err)
940− assert.Equal(t, "model", large.Model)
941− assert.Equal(t, "custom", large.Provider)
942− assert.Equal(t, int64(600), large.MaxTokens)
943− assert.Equal(t, "model", small.Model)
944− assert.Equal(t, "custom", small.Provider)
945− assert.Equal(t, int64(600), small.MaxTokens)
939+ require.NoError(t, err)
940+ require.Equal(t, "model", large.Model)
941+ require.Equal(t, "custom", large.Provider)
942+ require.Equal(t, int64(600), large.MaxTokens)
943+ require.Equal(t, "model", small.Model)
944+ require.Equal(t, "custom", small.Provider)
945+ require.Equal(t, int64(600), small.MaxTokens)
946946 })
947947
948948 t.Run("should fail if no model configured", func(t *testing.T) {
@@ -978,9 +978,9 @@ func TestConfig_defaultModelSelection(t *testing.T) {
978978 env := env.NewFromMap(map[string]string{})
979979 resolver := NewEnvironmentVariableResolver(env)
980980 err := cfg.configureProviders(env, resolver, knownProviders)
981− assert.NoError(t, err)
981+ require.NoError(t, err)
982982 _, _, err = cfg.defaultModelSelection(knownProviders)
983− assert.Error(t, err)
983+ require.Error(t, err)
984984 })
985985 t.Run("should use the default provider first", func(t *testing.T) {
986986 knownProviders := []catwalk.Provider{
@@ -1020,15 +1020,15 @@ func TestConfig_defaultModelSelection(t *testing.T) {
10201020 env := env.NewFromMap(map[string]string{})
10211021 resolver := NewEnvironmentVariableResolver(env)
10221022 err := cfg.configureProviders(env, resolver, knownProviders)
1023− assert.NoError(t, err)
1023+ require.NoError(t, err)
10241024 large, small, err := cfg.defaultModelSelection(knownProviders)
1025− assert.NoError(t, err)
1026− assert.Equal(t, "large-model", large.Model)
1027− assert.Equal(t, "openai", large.Provider)
1028− assert.Equal(t, int64(1000), large.MaxTokens)
1029− assert.Equal(t, "small-model", small.Model)
1030− assert.Equal(t, "openai", small.Provider)
1031− assert.Equal(t, int64(500), small.MaxTokens)
1025+ require.NoError(t, err)
1026+ require.Equal(t, "large-model", large.Model)
1027+ require.Equal(t, "openai", large.Provider)
1028+ require.Equal(t, int64(1000), large.MaxTokens)
1029+ require.Equal(t, "small-model", small.Model)
1030+ require.Equal(t, "openai", small.Provider)
1031+ require.Equal(t, int64(500), small.MaxTokens)
10321032 })
10331033}
10341034
@@ -1068,18 +1068,18 @@ func TestConfig_configureSelectedModels(t *testing.T) {
10681068 env := env.NewFromMap(map[string]string{})
10691069 resolver := NewEnvironmentVariableResolver(env)
10701070 err := cfg.configureProviders(env, resolver, knownProviders)
1071− assert.NoError(t, err)
1071+ require.NoError(t, err)
10721072
10731073 err = cfg.configureSelectedModels(knownProviders)
1074− assert.NoError(t, err)
1074+ require.NoError(t, err)
10751075 large := cfg.Models[SelectedModelTypeLarge]
10761076 small := cfg.Models[SelectedModelTypeSmall]
1077− assert.Equal(t, "larger-model", large.Model)
1078− assert.Equal(t, "openai", large.Provider)
1079− assert.Equal(t, int64(2000), large.MaxTokens)
1080− assert.Equal(t, "small-model", small.Model)
1081− assert.Equal(t, "openai", small.Provider)
1082− assert.Equal(t, int64(500), small.MaxTokens)
1077+ require.Equal(t, "larger-model", large.Model)
1078+ require.Equal(t, "openai", large.Provider)
1079+ require.Equal(t, int64(2000), large.MaxTokens)
1080+ require.Equal(t, "small-model", small.Model)
1081+ require.Equal(t, "openai", small.Provider)
1082+ require.Equal(t, int64(500), small.MaxTokens)
10831083 })
10841084 t.Run("should be possible to use multiple providers", func(t *testing.T) {
10851085 knownProviders := []catwalk.Provider{
@@ -1130,18 +1130,18 @@ func TestConfig_configureSelectedModels(t *testing.T) {
11301130 env := env.NewFromMap(map[string]string{})
11311131 resolver := NewEnvironmentVariableResolver(env)
11321132 err := cfg.configureProviders(env, resolver, knownProviders)
1133− assert.NoError(t, err)
1133+ require.NoError(t, err)
11341134
11351135 err = cfg.configureSelectedModels(knownProviders)
1136− assert.NoError(t, err)
1136+ require.NoError(t, err)
11371137 large := cfg.Models[SelectedModelTypeLarge]
11381138 small := cfg.Models[SelectedModelTypeSmall]
1139− assert.Equal(t, "large-model", large.Model)
1140− assert.Equal(t, "openai", large.Provider)
1141− assert.Equal(t, int64(1000), large.MaxTokens)
1142− assert.Equal(t, "a-small-model", small.Model)
1143− assert.Equal(t, "anthropic", small.Provider)
1144− assert.Equal(t, int64(300), small.MaxTokens)
1139+ require.Equal(t, "large-model", large.Model)
1140+ require.Equal(t, "openai", large.Provider)
1141+ require.Equal(t, int64(1000), large.MaxTokens)
1142+ require.Equal(t, "a-small-model", small.Model)
1143+ require.Equal(t, "anthropic", small.Provider)
1144+ require.Equal(t, int64(300), small.MaxTokens)
11451145 })
11461146
11471147 t.Run("should override the max tokens only", func(t *testing.T) {
@@ -1175,13 +1175,13 @@ func TestConfig_configureSelectedModels(t *testing.T) {
11751175 env := env.NewFromMap(map[string]string{})
11761176 resolver := NewEnvironmentVariableResolver(env)
11771177 err := cfg.configureProviders(env, resolver, knownProviders)
1178− assert.NoError(t, err)
1178+ require.NoError(t, err)
11791179
11801180 err = cfg.configureSelectedModels(knownProviders)
1181− assert.NoError(t, err)
1181+ require.NoError(t, err)
11821182 large := cfg.Models[SelectedModelTypeLarge]
1183− assert.Equal(t, "large-model", large.Model)
1184− assert.Equal(t, "openai", large.Provider)
1185− assert.Equal(t, int64(100), large.MaxTokens)
1183+ require.Equal(t, "large-model", large.Model)
1184+ require.Equal(t, "openai", large.Provider)
1185+ require.Equal(t, int64(100), large.MaxTokens)
11861186 })
11871187}