package org.onap.msb.apiroute.wrapper.consulextend.expose; import java.math.BigInteger; import java.util.ArrayList; import java.util.List; import org.junit.Assert; import org.junit.Test; import org.onap.msb.apiroute.wrapper.consulextend.Consul; import org.onap.msb.apiroute.wrapper.consulextend.expose.CheckTagAndAutoStopWatchFilter; import org.onap.msb.apiroute.wrapper.consulextend.model.health.ImmutableService; import org.onap.msb.apiroute.wrapper.consulextend.model.health.ImmutableServiceHealth; import org.onap.msb.apiroute.wrapper.consulextend.model.health.Service; import org.onap.msb.apiroute.wrapper.consulextend.model.health.ServiceHealth; import org.onap.msb.apiroute.wrapper.util.RouteUtil; import com.orbitz.consul.model.ConsulResponse; import com.orbitz.consul.model.health.ImmutableNode; public class CheckTagAndAutoStopWatchFilterTest { @Test public void testfilter() { CheckTagAndAutoStopWatchFilter filter = new CheckTagAndAutoStopWatchFilter("huangleibo"); List list = new ArrayList(); //visual range:0,tags meet conditions List tags = new ArrayList(); tags.add("\"base\":{\"protocol\":\"REST\",\"is_manual\":\"true\",\"version\":\"v1\",\"url\":\"/api/msbtest/v1\"}"); tags.add("\"ns\":{\"namespace\":\"nsName\"}"); tags.add("\"labels\":{\"visualRange\":\"0\",\"network_plane_type\":\"net\",\"customLabel\":\"custom\"}"); Service service0 = ImmutableService.builder().id("huangleibo1").port(0) .address("").service("huangleibo").tags(tags).createIndex(1) .modifyIndex(1).build(); ServiceHealth serviceHealth0 = ImmutableServiceHealth.builder() .service(service0) .node(ImmutableNode.builder().node("").address("").build()) .build(); list.add(serviceHealth0); ConsulResponse> object = new ConsulResponse>(list,1,true,BigInteger.valueOf(1)); //visual range:0,tags meet conditions,return true Assert.assertTrue(filter.filter(object)); //visual range:1,tags don't meet conditions List tags1 = new ArrayList(); tags1.add("\"base\":{\"protocol\":\"REST\",\"is_manual\":\"true\",\"version\":\"v1\",\"url\":\"/api/msbtest/v1\"}"); tags1.add("\"ns\":{\"namespace\":\"nsName\"}"); tags1.add("\"labels\":{\"visualRange\":\"1\",\"network_plane_type\":\"net\",\"customLabel\":\"custom\"}"); Service service1 = ImmutableService.builder().id("huangleibo1").port(0) .address("").service("huangleibo").tags(tags1).createIndex(1) .modifyIndex(1).build(); ServiceHealth serviceHealth1 = ImmutableServiceHealth.builder() .service(service1) .node(ImmutableNode.builder().node("").address("").build()) .build(); list.clear(); list.add(serviceHealth1); //visual range:1,tags don't meet conditions,return false Assert.assertFalse(filter.filter(object)); } }