} } clock = fakeclock.NewFakeClock(time.Now()) fetcher = NewRouteFetcher(logger, tokenFetcher, registry, cfg, client, retryInterval, clock) }) AfterEach(func() { close(errorChannel) close(eventChannel) }) Describe("FetchRoutes", func() { BeforeEach(func() { tokenFetcher.FetchTokenReturns(token, nil) response = []db.Route{ { Route: "foo", Port: 1, IP: "1.1.1.1", TTL: 1, LogGuid: "guid", }, { Route: "foo", Port: 2, IP: "2.2.2.2", TTL: 1, LogGuid: "guid",
. "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe(".List", func() { var ( client *fake_routing_api.FakeClient tokenFetcher *fake_token_fetcher.FakeTokenFetcher route db.Route routes []db.Route ) BeforeEach(func() { client = &fake_routing_api.FakeClient{} tokenFetcher = &fake_token_fetcher.FakeTokenFetcher{} tokenFetcher.FetchTokenReturns(&token_fetcher.Token{AccessToken: "token"}, nil) route = db.Route{ Route: "post_here", Port: 7000, IP: "1.2.3.4", TTL: 50, LogGuid: "my-guid", } routes = append(routes, route) error := errors.New("this is an error") client.RoutesReturns(routes, error) }) It("lists routes", func() { routesList, _ := commands.List(client, tokenFetcher) Expect(client.RoutesCallCount()).To(Equal(1))
verifyRoutingTableEntry := func(key models.RoutingKey, entry models.RoutingTableEntry) { existingEntry := routingTable.Get(key) Expect(existingEntry).NotTo(BeZero()) Expect(existingEntry).Should(Equal(entry)) } BeforeEach(func() { fakeConfigurer = new(fakes.FakeRouterConfigurer) fakeRoutingApiClient = new(fake_routing_api.FakeClient) fakeTokenFetcher = &testTokenFetcher.FakeTokenFetcher{} token := &token_fetcher.Token{ AccessToken: "access_token", ExpireTime: 5, } fakeTokenFetcher.FetchTokenReturns(token, nil) tmpRoutingTable := models.NewRoutingTable() routingTable = &tmpRoutingTable updater = routing_table.NewUpdater(logger, routingTable, fakeConfigurer, fakeRoutingApiClient, fakeTokenFetcher) }) Describe("HandleEvent", func() { BeforeEach(func() { existingRoutingKey1 = models.RoutingKey{externalPort1} existingRoutingTableEntry1 = models.NewRoutingTableEntry( models.BackendServerInfos{ models.BackendServerInfo{"some-ip-1", 1234}, models.BackendServerInfo{"some-ip-2", 1234}, }, ) Expect(routingTable.Set(existingRoutingKey1, existingRoutingTableEntry1)).To(BeTrue())