Beispiel #1
0
		BeforeEach(func() {
			routerGroups = models.RouterGroups{
				{
					Guid:            DefaultRouterGroupGuid,
					Name:            "default-tcp",
					Type:            "tcp",
					ReservablePorts: "1024-65535",
				},
			}
			tcpMapping = models.NewTcpRouteMapping(DefaultRouterGroupGuid, 52000, "1.2.3.4", 60000, 60)
		})

		Context("when valid tcp mapping is passed", func() {
			It("does not return error", func() {
				err := validator.ValidateCreateTcpRouteMapping([]models.TcpRouteMapping{tcpMapping}, routerGroups, 120)
				Expect(err).To(BeNil())
			})
		})

		Context("when invalid tcp route mappings are passed", func() {

			It("blows up when a backend port is zero", func() {
				tcpMapping.HostPort = 0
				err := validator.ValidateCreateTcpRouteMapping([]models.TcpRouteMapping{tcpMapping}, routerGroups, 120)
				Expect(err).ToNot(BeNil())
				Expect(err.Type).To(Equal(routing_api.TcpRouteMappingInvalidError))
				Expect(err.Error()).To(ContainSubstring("Each tcp mapping requires a positive backend port"))
			})

			It("blows up when a external port is zero", func() {