From 084cdd26d0f2bfa96d165c0a77a0697406919634 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Mon, 29 Jun 2026 01:19:28 +0800
Subject: [PATCH] Add Monterey compatibility build line

---
 privatevoice.src/internal/modelselection/selection_test.go |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/privatevoice.src/internal/modelselection/selection_test.go b/privatevoice.src/internal/modelselection/selection_test.go
index 96875d9..718d061 100644
--- a/privatevoice.src/internal/modelselection/selection_test.go
+++ b/privatevoice.src/internal/modelselection/selection_test.go
@@ -105,6 +105,9 @@
 }
 
 func TestResolveManualUsesQwen3ASRForChinese(t *testing.T) {
+	if !model.IsModelSupportedInCurrentBuild(model.Qwen3ASRModelID) {
+		t.Skip("qwen3-asr is disabled in this build")
+	}
 	cfg := config.Default()
 	cfg.LanguageMode = config.LanguageModeAuto
 	cfg.ModelSelectionMode = config.ModelSelectionModeManual
@@ -116,6 +119,24 @@
 	}
 }
 
+func TestResolveManualQwen3ASRFallsBackWhenUnsupported(t *testing.T) {
+	if model.IsModelSupportedInCurrentBuild(model.Qwen3ASRModelID) {
+		t.Skip("qwen3-asr is supported in this build")
+	}
+	cfg := config.Default()
+	cfg.LanguageMode = config.LanguageModeAuto
+	cfg.ModelSelectionMode = config.ModelSelectionModeManual
+	cfg.SelectedModelID = model.Qwen3ASRModelID
+
+	current := Resolve(cfg, fakeDetector{locale: "zh-CN"})
+	if current.ModelID != model.DefaultModelID {
+		t.Fatalf("model id = %q, want fallback %q", current.ModelID, model.DefaultModelID)
+	}
+	if current.FallbackReason != "manual model not supported in current build" {
+		t.Fatalf("fallback reason = %q, want unsupported build reason", current.FallbackReason)
+	}
+}
+
 func TestResolveManualUsesXASRForChinese(t *testing.T) {
 	cfg := config.Default()
 	cfg.LanguageMode = config.LanguageModeAuto

--
Gitblit v1.9.3