From 2c91688f39a80afc48e232e989f13aafbc782cf5 Mon Sep 17 00:00:00 2001 From: Mark Sargent <99003+sarge@users.noreply.github.com> Date: Sun, 10 May 2020 08:11:35 +1200 Subject: [PATCH] fix testharness, dumps the current config, only if the config was successfully loaded (#3385) --- caddytest/caddytest.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/caddytest/caddytest.go b/caddytest/caddytest.go index 48dd3fac..059b3e17 100644 --- a/caddytest/caddytest.go +++ b/caddytest/caddytest.go @@ -55,8 +55,9 @@ var ( // Tester represents an instance of a test client. type Tester struct { - Client *http.Client - t *testing.T + Client *http.Client + configLoaded bool + t *testing.T } // NewTester will create a new testing client with an attached cookie jar @@ -73,7 +74,8 @@ func NewTester(t *testing.T) *Tester { Jar: jar, Timeout: Default.TestRequestTimeout, }, - t: t, + configLoaded: false, + t: t, } } @@ -114,7 +116,8 @@ func (tc *Tester) initServer(rawConfig string, configType string) error { } tc.t.Cleanup(func() { - if tc.t.Failed() { + if tc.t.Failed() && tc.configLoaded { + res, err := http.Get(fmt.Sprintf("http://localhost:%d/config/", Default.AdminPort)) if err != nil { tc.t.Log("unable to read the current config") @@ -164,6 +167,7 @@ func (tc *Tester) initServer(rawConfig string, configType string) error { return configLoadError{Response: string(body)} } + tc.configLoaded = true return nil }