1package middleware 2 3import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 "github.com/stretchr/testify/require" 8) 9 10func TestMiddlewareDashboardRedirect_legacyEditPanel(t *testing.T) { 11 middlewareScenario(t, "GET dashboard by legacy edit URL", func(t *testing.T, sc *scenarioContext) { 12 sc.handlerFunc = RedirectFromLegacyPanelEditURL(sc.cfg) 13 sc.m.Get("/d/:uid/:slug", sc.defaultHandler) 14 15 sc.fakeReqWithParams("GET", "/d/asd/dash?orgId=1&panelId=12&fullscreen&edit", map[string]string{}).exec() 16 17 assert.Equal(t, 301, sc.resp.Code) 18 // nolint:bodyclose 19 resp := sc.resp.Result() 20 t.Cleanup(func() { 21 err := resp.Body.Close() 22 assert.NoError(t, err) 23 }) 24 redirectURL, err := resp.Location() 25 require.NoError(t, err) 26 assert.Equal(t, "/d/asd/d/asd/dash?editPanel=12&orgId=1", redirectURL.String()) 27 }) 28} 29