package server import ( "encoding/json" "net/http" "testing" "music-server/internal/backend" "github.com/stretchr/testify/assert" ) // TestGetLatestVersion verifies the version endpoint returns latest version func TestGetLatestVersion(t *testing.T) { e := StartTestServer(t) resp := MakeTestRequest(t, e, "GET", "/version") assert.Equal(t, http.StatusOK, resp.Code) var versionData backend.VersionData err := json.Unmarshal(resp.Body.Bytes(), &versionData) assert.NoError(t, err) assert.NotEmpty(t, versionData.Version) assert.NotEmpty(t, versionData.Changelog) } // TestGetVersionHistory verifies the version history endpoint returns version history func TestGetVersionHistory(t *testing.T) { e := StartTestServer(t) resp := MakeTestRequest(t, e, "GET", "/version/history") assert.Equal(t, http.StatusOK, resp.Code) var versionHistory []backend.VersionData err := json.Unmarshal(resp.Body.Bytes(), &versionHistory) assert.NoError(t, err) assert.NotEmpty(t, versionHistory) assert.NotEmpty(t, versionHistory[0].Version) assert.NotEmpty(t, versionHistory[0].Changelog) }