Пример #1
0
			BeforeEach(func() {
				modTag2 = models.ModificationTag{Guid: "abc"}
				endpoint1 := route.NewEndpoint("", "1.2.3.4", 5678, "", nil, -1, "", modTag)
				Expect(pool.Put(endpoint1)).To(BeTrue())
			})

			It("updates an endpoint with modification tag", func() {
				endpoint := route.NewEndpoint("", "1.2.3.4", 5678, "", nil, -1, "", modTag2)
				Expect(pool.Put(endpoint)).To(BeTrue())
				Expect(pool.Endpoints("").Next().ModificationTag).To(Equal(modTag2))
			})

			Context("when modification_tag is older", func() {
				BeforeEach(func() {
					modTag.Increment()
					endpoint := route.NewEndpoint("", "1.2.3.4", 5678, "", nil, -1, "", modTag2)
					pool.Put(endpoint)
				})

				It("doesnt update an endpoint", func() {
					olderModTag := models.ModificationTag{Guid: "abc"}
					endpoint := route.NewEndpoint("", "1.2.3.4", 5678, "", nil, -1, "", olderModTag)

					Expect(pool.Put(endpoint)).To(BeFalse())
					Expect(pool.Endpoints("").Next().ModificationTag).To(Equal(modTag2))
				})
			})
		})
	})