Skip to content

Commit f8ce6ae

Browse files
committed
add a test for sentry timeout
1 parent 077c4b5 commit f8ce6ae

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

middlewares_test.go

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,16 @@ package main
33
import (
44
"bytes"
55
"context"
6+
"encoding/json"
67
"fmt"
78
"io"
89
"io/ioutil"
9-
"net/http/httptest"
1010
"net/http"
11+
"net/http/httptest"
1112
"os"
1213
"regexp"
1314
"testing"
14-
"encoding/json"
15+
"time"
1516

1617
"gopkg.in/check.v1"
1718
)
@@ -92,6 +93,10 @@ func (s *Suite) TestSentryHandler(c *check.C) {
9293
c.Assert(ok, check.Equals, true)
9394
c.Assert(out_combined, check.Equals, "hi")
9495
})
96+
mux.HandleFunc("/api/3/store/", func(w http.ResponseWriter, r *http.Request) {
97+
fmt.Fprintf(os.Stdout, "called")
98+
<-time.After(35 * time.Second)
99+
})
95100
server := httptest.NewServer(mux)
96101

97102
// enabled working
@@ -108,6 +113,16 @@ func (s *Suite) TestSentryHandler(c *check.C) {
108113
for _, cse := range mockCases {
109114
cse.validate(c, sentryHandler, mockStderrCheck(&check.Matches), mockStderr("(?s).*empty username.*"))
110115
}
116+
117+
// timeout
118+
os.Setenv("CRONGUARD_SENTRY_DSN", fmt.Sprintf("http://testuser@%s/3", server.Listener.Addr().String()))
119+
SentryTimeout = 2 * time.Second
120+
mockCases = newMockCases()
121+
mockCases[0].validate(c, sentryHandler)
122+
mockCases[1].validate(c, sentryHandler)
123+
mockCases[2].validate(c, sentryHandler)
124+
mockCases[3].validate(c, sentryHandler)
125+
mockCases[4].validate(c, sentryHandler)
111126
}
112127

113128
func (s *Suite) TestQuietIgnore(c *check.C) {

0 commit comments

Comments
 (0)