Ignore m3u files when scanning

This commit is contained in:
Deluan 2020-07-03 21:06:33 -04:00
parent 1cc03fdd8c
commit 17830d63b4
4 changed files with 15 additions and 1 deletions

View File

@ -55,6 +55,7 @@ var _ = Describe("Metadata", func() {
Expect(files).To(HaveKey("tests/fixtures/test.ogg"))
Expect(files).To(HaveKey("tests/fixtures/test.mp3"))
Expect(files).To(HaveKey("tests/fixtures/01 Invisible (RED) Edit Version.mp3"))
Expect(files).ToNot(HaveKey("tests/fixtures/playlist.m3u"))
})
It("returns error if path does not exist", func() {
_, err := LoadAllAudioFiles("./INVALID/PATH")

0
tests/fixtures/playlist.m3u vendored Normal file
View File

View File

@ -6,9 +6,14 @@ import (
"strings"
)
var excludeAudioType = []string{
"audio/x-mpegurl",
}
func IsAudioFile(filePath string) bool {
extension := filepath.Ext(filePath)
return strings.HasPrefix(mime.TypeByExtension(extension), "audio/")
mimeType := mime.TypeByExtension(extension)
return !StringInSlice(mimeType, excludeAudioType) && strings.HasPrefix(mimeType, "audio/")
}
func IsImageFile(filePath string) bool {

View File

@ -20,6 +20,14 @@ var _ = Describe("Files", func() {
It("returns false for a non-audio file", func() {
Expect(IsAudioFile("test.jpg")).To(BeFalse())
})
It("returns false for m3u files", func() {
Expect(IsAudioFile("test.m3u")).To(BeFalse())
})
It("returns false for pls files", func() {
Expect(IsAudioFile("test.pls")).To(BeFalse())
})
})
Describe("IsImageFile", func() {