From 55252cbc32a0ba4229ea522a2b3d1ab88f9d0597 Mon Sep 17 00:00:00 2001 From: Milos Gajdos Date: Wed, 20 Nov 2019 14:53:12 +0000 Subject: [PATCH] Fix the router test; get rid of time dependency (#964) --- router/default_test.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/router/default_test.go b/router/default_test.go index 4c3c933e..2d12a14f 100644 --- a/router/default_test.go +++ b/router/default_test.go @@ -75,12 +75,14 @@ func TestRouterAdvertise(t *testing.T) { var advertErr error + createDone := make(chan bool) errChan := make(chan error) var wg sync.WaitGroup wg.Add(1) go func() { wg.Done() + defer close(createDone) for _, route := range routes { log.Debugf("Creating route %v", route) if err := r.Table().Create(route); err != nil { @@ -92,13 +94,13 @@ func TestRouterAdvertise(t *testing.T) { }() var adverts int - doneChan := make(chan bool) + readDone := make(chan bool) wg.Add(1) go func() { defer func() { wg.Done() - doneChan <- true + readDone <- true }() for advert := range ch { select { @@ -113,7 +115,10 @@ func TestRouterAdvertise(t *testing.T) { } }() - <-doneChan + // done adding routes to routing table + <-createDone + // done reading adverts from the routing table + <-readDone if adverts != nrRoutes { t.Errorf("Expected %d adverts, received: %d", nrRoutes, adverts)