From a5c393f79a6eb0bf493b2ec67faa25c9ab5045c0 Mon Sep 17 00:00:00 2001 From: Ivan Kozlovic Date: Fri, 22 Apr 2016 16:18:59 -0600 Subject: [PATCH] Add check for route TLS handshake error --- server/routes_test.go | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/server/routes_test.go b/server/routes_test.go index e6df6e95..86f61436 100644 --- a/server/routes_test.go +++ b/server/routes_test.go @@ -380,3 +380,29 @@ func TestTLSChainedSolicitWorks(t *testing.T) { t.Fatal("Timeout waiting for message across route") } } + +func TestRouteTLSHandshakeError(t *testing.T) { + optsSeed, _ := ProcessConfigFile("./configs/seed_tls.conf") + srvSeed := RunServer(optsSeed) + defer srvSeed.Shutdown() + + opts := DefaultOptions + opts.Routes = RoutesFromStr(fmt.Sprintf("nats://%s:%d", optsSeed.ClusterHost, optsSeed.ClusterPort)) + + srv := RunServer(&opts) + defer srv.Shutdown() + + time.Sleep(500 * time.Millisecond) + + maxTime := time.Now().Add(1 * time.Second) + for time.Now().Before(maxTime) { + if srv.NumRoutes() > 0 { + time.Sleep(100 * time.Millisecond) + continue + } + break + } + if srv.NumRoutes() > 0 { + t.Fatal("Route should have failed") + } +}