Skip to content

Commit

Permalink
fix-path-dots: adding TestURLDotEscape
Browse files Browse the repository at this point in the history
  • Loading branch information
ninedraft committed Feb 11, 2022
1 parent d846e6d commit 9fc561a
Showing 1 changed file with 19 additions and 0 deletions.
19 changes: 19 additions & 0 deletions gemax/server_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,25 @@ func TestListenAndServe(test *testing.T) {
test.Logf("%s / %v", data, errRead)
}

// emulates michael-lazar/gemini-diagnostics localhost $PORT --checks='URLDotEscape'
func TestURLDotEscape(test *testing.T) {
var listener, server = setupEchoServer(test)
server.Hosts = []string{"example.com"}
defer func() { _ = listener.Close() }()
var ctx, cancel = context.WithCancel(context.Background())
test.Cleanup(cancel)
runTask(test, func() {
var err = server.Serve(ctx, listener)
if err != nil {
test.Logf("test server: Serve: %v", err)
}
})

var resp = listener.next(test.Name(), strings.NewReader("gemini://example.com/../../\r\n"))

expectResponse(test, resp, "50 50 PERMANENT FAILURE\r\n")
}

func setupEchoServer(t *testing.T) (*fakeListener, *gemax.Server) {
t.Helper()
var server = &gemax.Server{
Expand Down

0 comments on commit 9fc561a

Please sign in to comment.