clusters.put("cluster1", list1);
}
@Test
public void test_matchRoute() throws Exception {
Route route = new Route();
route.setId(1L);
route.setPriority(3);
route.setMatchRule("consumer.host = 1.1.2.2");
route.setFilterRule("xxx = yyy");
routes.add(route);
{
assertTrue(RouteUtils.matchRoute("1.1.2.2:20880", "dubbo=2.0.0&version=3.0.0&revision=3.0.0&application=kylin", route, clusters));
assertFalse(RouteUtils.matchRoute("9.9.9.9", "dubbo=2.0.0&version=3.0.0&revision=3.0.0&application=kylin", route, clusters));
route.setMatchRule("consumer.host = 1.1.2.2 & consumer.application = kylin");
assertTrue(RouteUtils.matchRoute("1.1.2.2", "dubbo=2.0.0&version=3.0.0&revision=3.0.0&application=kylin", route, clusters));
route.setMatchRule("consumer.host = 1.1.2.2 & consumer.application = notExstied");
assertFalse(RouteUtils.matchRoute("1.1.2.2", "dubbo=2.0.0&version=3.0.0&revision=3.0.0&methods=getPort,say&application=kylin", route, clusters));
}
{
route.setMatchRule("consumer.cluster = cluster1");
assertTrue(RouteUtils.matchRoute("7.7.7.7:20880", "dubbo=2.0.0&version=3.0.0&revision=3.0.0&application=kylin", route, clusters));
assertFalse(RouteUtils.matchRoute("9.9.9.9", "dubbo=2.0.0&version=3.0.0&revision=3.0.0&application=kylin", route, clusters));
route.setMatchRule("consumer.cluster = cluster1 & consumer.application = kylin");
assertTrue(RouteUtils.matchRoute("7.7.7.7", "dubbo=2.0.0&version=3.0.0&revision=3.0.0&application=kylin", route, clusters));
route.setMatchRule("consumer.cluster = cluster1 & consumer.application = notExstied");
assertFalse(RouteUtils.matchRoute("7.7.7.7", "dubbo=2.0.0&version=3.0.0&revision=3.0.0&methods=getPort,say&application=kylin", route, clusters));
}
}