75 lines
1.8 KiB
Go
75 lines
1.8 KiB
Go
|
|
package e2e
|
||
|
|
|
||
|
|
import (
|
||
|
|
"github.com/navidrome/navidrome/server/subsonic/responses"
|
||
|
|
. "github.com/onsi/ginkgo/v2"
|
||
|
|
. "github.com/onsi/gomega"
|
||
|
|
)
|
||
|
|
|
||
|
|
var _ = Describe("System Endpoints", func() {
|
||
|
|
BeforeEach(func() {
|
||
|
|
setupTestDB()
|
||
|
|
})
|
||
|
|
|
||
|
|
Describe("ping", func() {
|
||
|
|
It("returns a successful response", func() {
|
||
|
|
resp := doReq("ping")
|
||
|
|
|
||
|
|
Expect(resp.Status).To(Equal(responses.StatusOK))
|
||
|
|
})
|
||
|
|
})
|
||
|
|
|
||
|
|
Describe("getLicense", func() {
|
||
|
|
It("returns a valid license", func() {
|
||
|
|
resp := doReq("getLicense")
|
||
|
|
|
||
|
|
Expect(resp.Status).To(Equal(responses.StatusOK))
|
||
|
|
Expect(resp.License).ToNot(BeNil())
|
||
|
|
Expect(resp.License.Valid).To(BeTrue())
|
||
|
|
})
|
||
|
|
})
|
||
|
|
|
||
|
|
Describe("getOpenSubsonicExtensions", func() {
|
||
|
|
It("returns a list of supported extensions", func() {
|
||
|
|
resp := doReq("getOpenSubsonicExtensions")
|
||
|
|
|
||
|
|
Expect(resp.Status).To(Equal(responses.StatusOK))
|
||
|
|
Expect(resp.OpenSubsonicExtensions).ToNot(BeNil())
|
||
|
|
Expect(*resp.OpenSubsonicExtensions).ToNot(BeEmpty())
|
||
|
|
})
|
||
|
|
|
||
|
|
It("includes the transcodeOffset extension", func() {
|
||
|
|
resp := doReq("getOpenSubsonicExtensions")
|
||
|
|
|
||
|
|
extensions := *resp.OpenSubsonicExtensions
|
||
|
|
var names []string
|
||
|
|
for _, ext := range extensions {
|
||
|
|
names = append(names, ext.Name)
|
||
|
|
}
|
||
|
|
Expect(names).To(ContainElement("transcodeOffset"))
|
||
|
|
})
|
||
|
|
|
||
|
|
It("includes the formPost extension", func() {
|
||
|
|
resp := doReq("getOpenSubsonicExtensions")
|
||
|
|
|
||
|
|
extensions := *resp.OpenSubsonicExtensions
|
||
|
|
var names []string
|
||
|
|
for _, ext := range extensions {
|
||
|
|
names = append(names, ext.Name)
|
||
|
|
}
|
||
|
|
Expect(names).To(ContainElement("formPost"))
|
||
|
|
})
|
||
|
|
|
||
|
|
It("includes the songLyrics extension", func() {
|
||
|
|
resp := doReq("getOpenSubsonicExtensions")
|
||
|
|
|
||
|
|
extensions := *resp.OpenSubsonicExtensions
|
||
|
|
var names []string
|
||
|
|
for _, ext := range extensions {
|
||
|
|
names = append(names, ext.Name)
|
||
|
|
}
|
||
|
|
Expect(names).To(ContainElement("songLyrics"))
|
||
|
|
})
|
||
|
|
})
|
||
|
|
})
|