예제 #1
0
		public void Register_Existing_Route_With_Less_Priority()
		{
			var controller = new RoutesHostServer.Controllers.RoutesApiController();

			var route = new RoutesHostServer.Models.Route();
			route.ApiKey = Guid.NewGuid().ToString();
			route.ServiceName = "Test";
			route.WebApiAddress = "http://test.com";
			route.Priority = 1;
			controller.Register(route);

			var lessRoute = (RoutesHostServer.Models.Route) route.Clone();
			lessRoute.Priority = 2;

			controller.Register(lessRoute);

			var result = controller.Resolve(route.ApiKey, route.ServiceName);
			Check.That(result.Address).IsEqualTo(route.WebApiAddress);
		}
예제 #2
0
		public void Add_Routes_With_Priorities_And_Unregister_First()
		{
			var controller = new RoutesHostServer.Controllers.RoutesApiController();

			var route = new RoutesHostServer.Models.Route();
			route.ApiKey = Guid.NewGuid().ToString();
			route.ServiceName = "Test";
			route.WebApiAddress = "http://test.com";
			controller.Register(route);

			var lessRoute =(RoutesHostServer.Models.Route)route.Clone();
			lessRoute.Priority = 2;
			controller.Register(lessRoute);

			var result = controller.Resolve(route.ApiKey, route.ServiceName);

			Check.That(result.Address).IsEqualTo(route.WebApiAddress);

			controller.UnRegister(route.Id);

			result = controller.Resolve(route.ApiKey, route.ServiceName);

			Check.That(result.Address).IsNotNull();
		}