@@ -3,15 +3,16 @@ package main
33import (
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
113128func (s * Suite ) TestQuietIgnore (c * check.C ) {
0 commit comments