package e2eimport ("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.OpenSubsonicExtensionsvar names []stringfor _, ext := range extensions {names = append(names, ext.Name)}Expect(names).To(ContainElement("transcodeOffset"))})It("includes the formPost extension", func() {resp := doReq("getOpenSubsonicExtensions")extensions := *resp.OpenSubsonicExtensionsvar names []stringfor _, ext := range extensions {names = append(names, ext.Name)}Expect(names).To(ContainElement("formPost"))})It("includes the songLyrics extension", func() {resp := doReq("getOpenSubsonicExtensions")extensions := *resp.OpenSubsonicExtensionsvar names []stringfor _, ext := range extensions {names = append(names, ext.Name)}Expect(names).To(ContainElement("songLyrics"))})})})