Initial cloud-services repo - gateway service + pkg modules

This commit is contained in:
Chris Rai
2026-01-30 23:14:52 -05:00
commit fbb820d7b3
1037 changed files with 171318 additions and 0 deletions

View File

@@ -0,0 +1,66 @@
package httphandlers
import (
"net/http"
"testing"
"fiskerinc.com/modules/testhelper"
)
const expectedRedirectURL = "/docs/index.html"
const expectedNoRedirectURL = ""
func TestSwaggerDocsRedirect(t *testing.T) {
type test struct {
name string
request *http.Request
expectedRedirect string
}
tests := []test{
{
name: "Redirect to index.html",
request: makeRequest("http://test.com/docs"),
expectedRedirect: expectedRedirectURL,
},
{
name: "/ Redirect to index.html",
request: makeRequest("http://test.com/docs/"),
expectedRedirect: expectedRedirectURL,
},
{
name: "Requests index.html, no redirect",
request: makeRequest("http://test.com/docs/index.html"),
expectedRedirect: expectedNoRedirectURL,
},
{
name: "Requests .js, no redirect",
request: makeRequest("http://test.com/docs/index.js"),
expectedRedirect: expectedNoRedirectURL,
},
{
name: "Requests .css, no redirect",
request: makeRequest("http://test.com/docs/index.css"),
expectedRedirect: expectedNoRedirectURL,
},
{
name: "Requests .json, no redirect",
request: makeRequest("http://test.com/docs/index.json"),
expectedRedirect: expectedNoRedirectURL,
},
}
for _, item := range tests {
path := shouldRedirect(item.request)
if path != item.expectedRedirect {
t.Errorf(testhelper.TestErrorTemplate, item.name, item.expectedRedirect, path)
}
}
}
func makeRequest(url string) *http.Request {
request, _ := http.NewRequest(http.MethodGet, url, nil)
request.RequestURI = url
return request
}