| | |
| | | } |
| | | } |
| | | |
| | | func TestResolveAutoUsesEuropeanDefaultModel(t *testing.T) { |
| | | cfg := config.Default() |
| | | cfg.LanguageMode = config.LanguageModeAuto |
| | | cfg.ModelSelectionMode = config.ModelSelectionModeAuto |
| | | |
| | | current := Resolve(cfg, fakeDetector{locale: "fr-FR"}) |
| | | if current.ModelID != model.ParakeetV3ModelID { |
| | | t.Fatalf("model id = %q, want %q", current.ModelID, model.ParakeetV3ModelID) |
| | | } |
| | | if current.Profile.BackendKind != model.BackendNemoTransducer { |
| | | t.Fatalf("backend = %q, want %q", current.Profile.BackendKind, model.BackendNemoTransducer) |
| | | } |
| | | } |
| | | |
| | | func TestResolveAutoUsesJapaneseAndKoreanDefaults(t *testing.T) { |
| | | tests := []struct { |
| | | locale string |
| | | modelID string |
| | | }{ |
| | | {"ja-JP", model.JapaneseModelID}, |
| | | {"ko-KR", model.KoreanModelID}, |
| | | } |
| | | for _, tt := range tests { |
| | | cfg := config.Default() |
| | | cfg.LanguageMode = config.LanguageModeAuto |
| | | cfg.ModelSelectionMode = config.ModelSelectionModeAuto |
| | | |
| | | current := Resolve(cfg, fakeDetector{locale: tt.locale}) |
| | | if current.ModelID != tt.modelID { |
| | | t.Fatalf("%s model id = %q, want %q", tt.locale, current.ModelID, tt.modelID) |
| | | } |
| | | if current.Profile.BackendKind != model.BackendTransducer { |
| | | t.Fatalf("%s backend = %q, want %q", tt.locale, current.Profile.BackendKind, model.BackendTransducer) |
| | | } |
| | | } |
| | | } |
| | | |
| | | func TestResolveOldConfigMissingSelectionModeUsesAuto(t *testing.T) { |
| | | cfg := config.Default() |
| | | cfg.LanguageMode = config.LanguageModeAuto |
| | |
| | | } |
| | | } |
| | | |
| | | func TestResolveManualParakeetV3FallsBackForJapanese(t *testing.T) { |
| | | cfg := config.Default() |
| | | cfg.LanguageMode = config.LanguageModeAuto |
| | | cfg.ModelSelectionMode = config.ModelSelectionModeManual |
| | | cfg.SelectedModelID = model.ParakeetV3ModelID |
| | | |
| | | current := Resolve(cfg, fakeDetector{locale: "ja-JP"}) |
| | | if current.ModelID != model.JapaneseModelID { |
| | | t.Fatalf("model id = %q, want Japanese default %q", current.ModelID, model.JapaneseModelID) |
| | | } |
| | | if current.FallbackReason == "" { |
| | | t.Fatal("expected fallback reason") |
| | | } |
| | | } |
| | | |
| | | func TestResolveInvalidManualFallsBackToLanguageDefault(t *testing.T) { |
| | | cfg := config.Default() |
| | | cfg.LanguageMode = config.LanguageModeAuto |