refactor(scanner): replace parseTargets function with direct call to scanner.ParseTargets

Signed-off-by: Deluan <deluan@navidrome.org>
This commit is contained in:
Deluan 2025-11-11 22:53:39 -05:00
parent d30f6cfc92
commit 5eb867b639
2 changed files with 1 additions and 35 deletions

View File

@ -76,7 +76,7 @@ func runScanner(ctx context.Context) {
var scanTargets []model.ScanTarget
if targets != "" {
var err error
scanTargets, err = parseTargets(targets)
scanTargets, err = scanner.ParseTargets(strings.Split(targets, ","))
if err != nil {
log.Fatal(ctx, "Failed to parse targets", err)
}
@ -95,9 +95,3 @@ func runScanner(ctx context.Context) {
trackScanInteractively(ctx, progress)
}
}
// parseTargets parses the comma-separated targets string into ScanTarget structs
func parseTargets(targetsStr string) ([]model.ScanTarget, error) {
targets := strings.Split(targetsStr, ",")
return scanner.ParseTargets(targets)
}

View File

@ -1,28 +0,0 @@
package cmd
import (
"github.com/navidrome/navidrome/model"
. "github.com/onsi/ginkgo/v2"
. "github.com/onsi/gomega"
)
var _ = Describe("parseTargets", func() {
Context("Valid targets", func() {
It("parses multiple targets", func() {
targets, err := parseTargets("1:Music/Rock,2:Jazz,3:Classical/Beethoven")
Expect(err).ToNot(HaveOccurred())
Expect(targets).To(HaveLen(3))
Expect(targets[0]).To(Equal(model.ScanTarget{LibraryID: 1, FolderPath: "Music/Rock"}))
Expect(targets[1]).To(Equal(model.ScanTarget{LibraryID: 2, FolderPath: "Jazz"}))
Expect(targets[2]).To(Equal(model.ScanTarget{LibraryID: 3, FolderPath: "Classical/Beethoven"}))
})
It("returns error for empty string", func() {
_, err := parseTargets("")
Expect(err).To(HaveOccurred())
Expect(err.Error()).To(ContainSubstring("no valid targets"))
})
// Other test cases are covered in scanner/controller_test.go
})
})