33package pool
44
55import (
6+ "crypto/tls"
67 "net"
78 "net/http/httptest"
89 "time"
@@ -14,12 +15,17 @@ import (
1415var _ = Describe ("tests conn_check with real conns" , func () {
1516 var ts * httptest.Server
1617 var conn net.Conn
18+ var tlsConn * tls.Conn
1719 var err error
1820
1921 BeforeEach (func () {
2022 ts = httptest .NewServer (nil )
2123 conn , err = net .DialTimeout (ts .Listener .Addr ().Network (), ts .Listener .Addr ().String (), time .Second )
2224 Expect (err ).NotTo (HaveOccurred ())
25+ tlsTestServer := httptest .NewUnstartedServer (nil )
26+ tlsTestServer .StartTLS ()
27+ tlsConn , err = tls .DialWithDialer (& net.Dialer {Timeout : time .Second }, tlsTestServer .Listener .Addr ().Network (), tlsTestServer .Listener .Addr ().String (), & tls.Config {InsecureSkipVerify : true })
28+ Expect (err ).NotTo (HaveOccurred ())
2329 })
2430
2531 AfterEach (func () {
@@ -33,11 +39,23 @@ var _ = Describe("tests conn_check with real conns", func() {
3339 Expect (connCheck (conn )).To (HaveOccurred ())
3440 })
3541
42+ It ("good tls conn check" , func () {
43+ Expect (connCheck (tlsConn )).NotTo (HaveOccurred ())
44+
45+ Expect (tlsConn .Close ()).NotTo (HaveOccurred ())
46+ Expect (connCheck (tlsConn )).To (HaveOccurred ())
47+ })
48+
3649 It ("bad conn check" , func () {
3750 Expect (conn .Close ()).NotTo (HaveOccurred ())
3851 Expect (connCheck (conn )).To (HaveOccurred ())
3952 })
4053
54+ It ("bad tls conn check" , func () {
55+ Expect (tlsConn .Close ()).NotTo (HaveOccurred ())
56+ Expect (connCheck (tlsConn )).To (HaveOccurred ())
57+ })
58+
4159 It ("check conn deadline" , func () {
4260 Expect (conn .SetDeadline (time .Now ())).NotTo (HaveOccurred ())
4361 time .Sleep (time .Millisecond * 10 )
0 commit comments