本文整理匯總了Golang中github.com/cloudfoundry-incubator/routing-api/db.DB.WatchRouteChanges方法的典型用法代碼示例。如果您正苦於以下問題:Golang DB.WatchRouteChanges方法的具體用法?Golang DB.WatchRouteChanges怎麽用?Golang DB.WatchRouteChanges使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/cloudfoundry-incubator/routing-api/db.DB
的用法示例。
在下文中一共展示了DB.WatchRouteChanges方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1:
})
It("returns the network error", func() {
err := fakeEtcd.SaveRoute(route)
Expect(err).To(HaveOccurred())
Expect(err).To(Equal(errors.New("some network error")))
Expect(fakeKeysAPI.GetCallCount()).To(Equal(1))
Expect(fakeKeysAPI.SetCallCount()).To(Equal(1))
})
})
})
})
Describe("WatchRouteChanges with http events", func() {
It("does return an error when canceled", func() {
_, errors, cancel := etcd.WatchRouteChanges(db.HTTP_ROUTE_BASE_KEY)
cancel()
Consistently(errors).ShouldNot(Receive())
Eventually(errors).Should(BeClosed())
})
Context("Cancel Watches", func() {
It("cancels any in-flight watches", func() {
results, err, _ := etcd.WatchRouteChanges(db.HTTP_ROUTE_BASE_KEY)
results2, err2, _ := etcd.WatchRouteChanges(db.HTTP_ROUTE_BASE_KEY)
etcd.CancelWatches()
Eventually(err).Should(BeClosed())
Eventually(err2).Should(BeClosed())
Eventually(results).Should(BeClosed())
示例2:
Expect(response.Node.TTL).To(Equal(int64(47)))
Expect(response.Node.Value).To(MatchJSON(`{
"ip": "9.8.7.6",
"route": "next-route",
"port": 12345,
"ttl": 47,
"log_guid": "new-guid"
}`))
})
})
})
Describe(".WatchRouteChanges", func() {
Context("when a route is upserted", func() {
It("should return an update watch event", func() {
results, _, _ := etcd.WatchRouteChanges()
err := etcd.SaveRoute(route)
Expect(err).NotTo(HaveOccurred())
event := <-results
Expect(event).NotTo(BeNil())
Expect(event.Type).To(Equal(storeadapter.UpdateEvent))
})
})
Context("when a route is deleted", func() {
It("should return an delete watch event", func() {
err := etcd.SaveRoute(route)
Expect(err).NotTo(HaveOccurred())
示例3:
Expect(node.TTL).To(Equal(uint64(47)))
Expect(node.Value).To(MatchJSON(`{
"ip": "9.8.7.6",
"route": "next-route",
"port": 12345,
"ttl": 47,
"log_guid": "new-guid"
}`))
})
})
})
Describe("WatchRouteChanges with http events", func() {
Context("when a route is upserted", func() {
It("should return an update watch event", func() {
results, _, _ := etcd.WatchRouteChanges(db.HTTP_ROUTE_BASE_KEY)
err := etcd.SaveRoute(route)
Expect(err).NotTo(HaveOccurred())
event := <-results
Expect(event).NotTo(BeNil())
Expect(event.Type).To(Equal(storeadapter.UpdateEvent))
By("when tcp route is upserted")
err = etcd.SaveTcpRouteMapping(tcpRouteMapping1)
Expect(err).NotTo(HaveOccurred())
Consistently(results).ShouldNot(Receive())
})
})
Context("when a route is deleted", func() {