From 437b01b7df7902944f51bec40dc6e348693474a4 Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Fri, 28 Jun 2019 16:35:16 +0700 Subject: [PATCH] fix flaky cancelation integration test --- integrationtests/self/cancelation_test.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/integrationtests/self/cancelation_test.go b/integrationtests/self/cancelation_test.go index 2724e4c59..72bb97cd6 100644 --- a/integrationtests/self/cancelation_test.go +++ b/integrationtests/self/cancelation_test.go @@ -451,17 +451,17 @@ var _ = Describe("Stream Cancelations", func() { ) Expect(err).ToNot(HaveOccurred()) - var numToAccept int32 + var numToAccept int var counter int32 var wg sync.WaitGroup wg.Add(numStreams) - for atomic.LoadInt32(&numToAccept) < numStreams { + for numToAccept < numStreams { ctx, cancel := context.WithCancel(context.Background()) // cancel accepting half of the streams if rand.Int31()%2 == 0 { cancel() } else { - atomic.AddInt32(&numToAccept, 1) + numToAccept++ defer cancel() } @@ -469,8 +469,9 @@ var _ = Describe("Stream Cancelations", func() { defer GinkgoRecover() str, err := sess.AcceptUniStream(ctx) if err != nil { - atomic.AddInt32(&counter, 1) - Expect(err).To(MatchError("context canceled")) + if err.Error() == "context canceled" { + atomic.AddInt32(&counter, 1) + } return } data, err := ioutil.ReadAll(str)