Expect(err).To(HaveOccurred()) }) Context("when an entry already exists", func() { BeforeEach(func() { route.Route = "next-route" route.IP = "9.8.7.6" route.Port = 12345 err := etcd.SaveRoute(route) Expect(err).NotTo(HaveOccurred()) }) It("Updates a route if one already exists", func() { route.TTL = 47 route.LogGuid = "new-guid" err := etcd.SaveRoute(route) Expect(err).NotTo(HaveOccurred()) response, err := etcdClient.Get(`/routes/next-route,9.8.7.6:12345`, false, false) Expect(err).NotTo(HaveOccurred()) 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" }`)) })