You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by al...@apache.org on 2021/08/11 04:17:07 UTC
[dubbo] branch 3.0 updated: Add unit test for VirtualServiceRule
(#8428)
This is an automated email from the ASF dual-hosted git repository.
albumenj pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/3.0 by this push:
new 4756ad8 Add unit test for VirtualServiceRule (#8428)
4756ad8 is described below
commit 4756ad8ce8d20c02a585482ecd432f2cbeec3bb2
Author: 灼华 <43...@users.noreply.github.com>
AuthorDate: Wed Aug 11 12:16:48 2021 +0800
Add unit test for VirtualServiceRule (#8428)
* Add unit test for VirtualServiceRule
* FIX UT
---
.../router/mesh/rule/VirtualServiceRuleTest.java | 43 ++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/router/mesh/rule/VirtualServiceRuleTest.java b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/router/mesh/rule/VirtualServiceRuleTest.java
index 9fa2098..de3383d 100644
--- a/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/router/mesh/rule/VirtualServiceRuleTest.java
+++ b/dubbo-cluster/src/test/java/org/apache/dubbo/rpc/cluster/router/mesh/rule/VirtualServiceRuleTest.java
@@ -17,11 +17,17 @@
package org.apache.dubbo.rpc.cluster.router.mesh.rule;
+import org.apache.dubbo.rpc.cluster.router.mesh.rule.virtualservice.DubboRoute;
+import org.apache.dubbo.rpc.cluster.router.mesh.rule.virtualservice.DubboRouteDetail;
import org.apache.dubbo.rpc.cluster.router.mesh.rule.virtualservice.VirtualServiceRule;
import org.junit.jupiter.api.Test;
import org.yaml.snakeyaml.Yaml;
+import java.util.List;
+
import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class VirtualServiceRuleTest {
@@ -33,6 +39,43 @@ public class VirtualServiceRuleTest {
System.out.println(virtualServiceRule);
assertNotNull(virtualServiceRule);
+
+ assertEquals("service.dubbo.apache.org/v1alpha1", virtualServiceRule.getApiVersion());
+ assertEquals("VirtualService", virtualServiceRule.getKind());
+ assertEquals("demo-route", virtualServiceRule.getMetadata().get("name"));
+
+ List<String> hosts = virtualServiceRule.getSpec().getHosts();
+ assertEquals(1, hosts.size());
+ assertEquals("demo", hosts.get(0));
+
+ List<DubboRoute> dubboRoutes = virtualServiceRule.getSpec().getDubbo();
+ assertEquals(1, dubboRoutes.size());
+
+ DubboRoute dubboRoute = dubboRoutes.get(0);
+ assertNull(dubboRoute.getName());
+
+ assertEquals(1, dubboRoute.getServices().size());
+ assertEquals("ccc", dubboRoute.getServices().get(0).getRegex());
+
+ List<DubboRouteDetail> routedetail = dubboRoute.getRoutedetail();
+ DubboRouteDetail firstDubboRouteDetail = routedetail.get(0);
+ DubboRouteDetail secondDubboRouteDetail = routedetail.get(1);
+ DubboRouteDetail thirdDubboRouteDetail = routedetail.get(2);
+
+ assertEquals("xxx-project", firstDubboRouteDetail.getName());
+ assertEquals("xxx", firstDubboRouteDetail.getMatch().get(0).getSourceLabels().get("trafficLabel"));
+ assertEquals("demo", firstDubboRouteDetail.getRoute().get(0).getDestination().getHost());
+ assertEquals("isolation", firstDubboRouteDetail.getRoute().get(0).getDestination().getSubset());
+
+ assertEquals("testing-trunk", secondDubboRouteDetail.getName());
+ assertEquals("testing-trunk", secondDubboRouteDetail.getMatch().get(0).getSourceLabels().get("trafficLabel"));
+ assertEquals("demo", secondDubboRouteDetail.getRoute().get(0).getDestination().getHost());
+ assertEquals("testing-trunk", secondDubboRouteDetail.getRoute().get(0).getDestination().getSubset());
+
+ assertEquals("testing", thirdDubboRouteDetail.getName());
+ assertNull(thirdDubboRouteDetail.getMatch());
+ assertEquals("demo", thirdDubboRouteDetail.getRoute().get(0).getDestination().getHost());
+ assertEquals("testing", thirdDubboRouteDetail.getRoute().get(0).getDestination().getSubset());
}
}