Example #1
0
		Context("when http routes are updated", func() {
			It("updates the Routes", func() {
				desiredLRPs := []receptor.DesiredLRPResponse{
					receptor.DesiredLRPResponse{ProcessGuid: "test-app"},
				}
				fakeReceptorClient.DesiredLRPsReturns(desiredLRPs, nil)
				expectedRouteOverrides := app_runner.RouteOverrides{
					{HostnamePrefix: "foo.com", Port: 8080},
					{HostnamePrefix: "bar.com", Port: 9090},
				}
				updateAppParams := app_runner.UpdateAppParams{
					Name:           "test-app",
					RouteOverrides: expectedRouteOverrides,
				}

				err := appRunner.UpdateApp(updateAppParams)
				Expect(err).NotTo(HaveOccurred())

				Expect(fakeReceptorClient.UpdateDesiredLRPCallCount()).To(Equal(1))
				processGuid, updateRequest := fakeReceptorClient.UpdateDesiredLRPArgsForCall(0)
				Expect(processGuid).To(Equal("test-app"))
				expectedRoutes := route_helpers.AppRoutes{
					{Hostnames: []string{"foo.com.myDiegoInstall.com"}, Port: 8080},
					{Hostnames: []string{"bar.com.myDiegoInstall.com"}, Port: 9090},
				}
				routes := route_helpers.RoutesFromRoutingInfo(updateRequest.Routes)
				Expect(routes.AppRoutes).To(ContainExactly(expectedRoutes))
				Expect(routes.TcpRoutes).To(BeNil())
			})
		})