App: "app1", PrivateInstanceID: "id", PrivateInstanceIndex: "index", Port: 1112, StaleThresholdInSeconds: 120, Uris: []route.Uri{"test.example.com", "test2.example.com"}, Tags: map[string]string{"key": "value"}, } data, err := json.Marshal(msg) Expect(err).NotTo(HaveOccurred()) var alreadyUnregistered uint32 registry.RegisterStub = func(uri route.Uri, e *route.Endpoint) { defer GinkgoRecover() if uri == racingURI { Expect(atomic.LoadUint32(&alreadyUnregistered)).To(Equal(uint32(0))) } } registry.UnregisterStub = func(uri route.Uri, e *route.Endpoint) { if uri == racingURI { atomic.StoreUint32(&alreadyUnregistered, 1) } } for i := 0; i < 100; i++ { err = natsClient.Publish("router.register", data) Expect(err).ToNot(HaveOccurred()) } err = natsClient.Publish("router.register", racingData) Expect(err).ToNot(HaveOccurred())