@JsonProperty("allowed-range")\r
private List<AllowedRanges> allowedRanges;\r
\r
+ @JsonProperty("shared-range")\r
+ private String sharedRange;\r
+ \r
@JsonProperty("element-vlan-role")\r
String elementVlanRole;\r
\r
this.allowedRanges = allowedRanges;\r
}\r
\r
- public String getElementVlanRole() {\r
+ public String getSharedRange() {\r
+ return sharedRange;\r
+ }\r
+\r
+ public void setSharedRange(String sharedRange) {\r
+ this.sharedRange = sharedRange;\r
+ }\r
+\r
+ public String getElementVlanRole() {\r
return elementVlanRole;\r
}\r
\r
this.elementVlanRole = elementVlanRole;\r
}\r
\r
- @Override\r
- public String toString() {\r
- return "Elements [recycleVlantagRange=" + recycleVlantagRange + ", overwrite=" + overwrite + ", vlantagName="\r
- + vlantagName + ", allowedRanges=" + allowedRanges + ", elementVlanRole=" + elementVlanRole + "]";\r
- }\r
+ @Override\r
+ public String toString() {\r
+ return "Elements [recycleVlantagRange=" + recycleVlantagRange + ", overwrite=" + overwrite + ", vlantagName="\r
+ + vlantagName + ", allowedRanges=" + allowedRanges + ", sharedRange=" + sharedRange\r
+ + ", elementVlanRole=" + elementVlanRole + "]";\r
+ }\r
\r
+ \r
\r
\r
\r
rr.applicationId = "SDNC";\r
rr.rangeMaxOverride = -1;\r
rr.rangeMinOverride = -1;\r
+ if("TRUE".equalsIgnoreCase(element.getSharedRange()))\r
+ rr.resourceShareGroup = input.getScopeId();\r
\r
List<Range> rangeList = new ArrayList<>();\r
for (AllowedRanges allowedRange : element.getAllowedRanges()) {\r
elements.setElementVlanRole("elementVlanRole");
assertEquals("elementVlanRole", elements.getElementVlanRole());
}
+
+ @Test
+ public void testGetSetSharedRange() {
+ elements.setSharedRange("TRUE");
+ assertEquals("TRUE", elements.getSharedRange());
+ }
@Test
public void testToString() {
import org.onap.ccsdk.apps.ms.vlantagapi.core.exception.VlantagApiException;\r
import org.onap.ccsdk.apps.ms.vlantagapi.core.extinf.pm.model.AllowedRanges;\r
import org.onap.ccsdk.apps.ms.vlantagapi.core.extinf.pm.model.Elements;\r
-import org.onap.ccsdk.apps.ms.vlantagapi.core.extinf.pm.model.PolicyEngineResponse;\r
import org.onap.ccsdk.apps.ms.vlantagapi.core.extinf.pm.model.ResourceModel;\r
import org.onap.ccsdk.apps.ms.vlantagapi.core.model.AssignVlanTagRequest;\r
import org.onap.ccsdk.apps.ms.vlantagapi.core.model.AssignVlanTagRequestInput;\r
import org.onap.ccsdk.apps.ms.vlantagapi.core.model.UnassignVlanTagRequestInput;\r
import org.onap.ccsdk.apps.ms.vlantagapi.core.model.UnassignVlanTagResponse;\r
import org.onap.ccsdk.apps.ms.vlantagapi.core.service.VlantagApiServiceImpl;\r
-import org.onap.ccsdk.apps.ms.vlantagapi.extinf.pm.PolicyManagerClient;\r
+import org.onap.ccsdk.apps.ms.vlantagapi.util.MockPolicyClient;\r
import org.onap.ccsdk.apps.ms.vlantagapi.util.MockResourceAllocator;\r
import org.onap.ccsdk.sli.adaptors.ra.comp.ResourceResponse;\r
import org.onap.ccsdk.sli.adaptors.util.str.StrUtil;\r
@InjectMocks\r
VlantagApiServiceImpl serviceSpy;\r
\r
- @Spy\r
- private PolicyManagerClient policyEngineSpy;\r
- \r
@Spy\r
protected static MockResourceAllocator mockRA2;\r
+ \r
+ @Spy \r
+ protected static MockPolicyClient policyClient; \r
\r
\r
@Rule\r
@Before\r
public void setup() throws Exception {\r
service = new VlantagApiServiceImpl();\r
-\r
- PolicyEngineResponse peResponse = new PolicyEngineResponse();\r
- peResponse.setConfig("{\"riskLevel\":\"4\",\"riskType\":\"test\",\"policyName\":\"Internet_VlanTag_1810_US_VPE\",\"service\":\"vlantagResourceModel\",\"guard\":\"False\",\"description\":\"Internet_VlanTag_1810_US_VPE\",\"templateVersion\":\"1607\",\"priority\":\"4\",\"version\":\"20180709\",\"content\":{\"policy-instance-name\":\"Internet_VlanTag_1810_US_VPE\",\"resource-models\":[{\"data-store\":\"FALSE\",\"elements\":[{\"allowed-range\":[{\"min\":\"3553\",\"max\":\"3562\"}],\"recycle-vlantag-range\":\"TRUE\",\"overwrite\":\"FALSE\",\"vlantag-name\":\"VPE-Cust\"}],\"scope\":\"SITE\",\"vlan-type\":\"vlan-id-outer\",\"resource-resolution-recipe\":\"#BSB# VPE-Cust #ESB#\",\"resource-vlan-role\":\"outer-tag\"},{\"data-store\":\"TRUE\",\"elements\":[{\"allowed-range\":[{\"min\":\"3503\",\"max\":\"3503\"}],\"element-vlan-role\":\"outer-tag\",\"recycle-vlantag-range\":\"TRUE\",\"overwrite\":\"FALSE\",\"vlantag-name\":\"VPE-Cust-Outer\"},{\"allowed-range\":[{\"min\":\"4001\",\"max\":\"4012\"}],\"element-vlan-role\":\"outer-tag\",\"recycle-vlantag-range\":\"TRUE\",\"overwrite\":\"FALSE\",\"vlantag-name\":\"VPE-Core1\"},{\"allowed-range\":[{\"min\":\"4001\",\"max\":\"4012\"}],\"element-vlan-role\":\"outer-tag\",\"recycle-vlantag-range\":\"TRUE\",\"overwrite\":\"FALSE\",\"vlantag-name\":\"VPE-Core2\"}],\"scope\":\"SITE\",\"vlan-type\":\"vlan-id-filter\",\"resource-resolution-recipe\":\"#BSB# VPE-Cust-Outer, VPE-Core1, VPE-Core2 #ESB#\"}]}}");\r
- PolicyEngineResponse[] peResponses = new PolicyEngineResponse[1];\r
- peResponses[0] = peResponse;\r
-\r
- Mockito.doReturn(peResponses).when(policyEngineSpy).getConfigUsingPost(any());\r
}\r
\r
@Test\r
StrUtil.info(log, response);\r
}\r
\r
+ @Test(expected = Test.None.class /* no exception expected */)\r
+ public void test_assign_sucess_002() throws Exception {\r
+ \r
+ AssignVlanTagRequestInput input = new AssignVlanTagRequestInput();\r
+ input.setPolicyInstanceName("some-policy-instance");\r
+ input.setVlanType("vlan-id-filter");\r
+ input.setScopeId("some-scope-id");\r
+ input.setVlanTagKey("some-key");\r
+ \r
+ AssignVlanTagRequest request = new AssignVlanTagRequest();\r
+ List<AssignVlanTagRequestInput> inputs = new ArrayList<>();\r
+ inputs.add(input);\r
+ request.setInput(inputs);\r
+ \r
+ //PowerMockito.doReturn(mockStatus.Success).when(mockRA).reserve(any(), any(), any(), any()); \r
+ AssignVlanTagResponse response = serviceSpy.assignVlanTag(request);\r
+ \r
+ StrUtil.info(log, response);\r
+ }\r
+ \r
@Test(expected = Test.None.class /* no exception expected */)\r
public void test_unassign_sucess_001() throws Exception {\r
\r
\r
@Test(expected = VlantagApiException.class)\r
public void testGetPolicyFromPDPFailure() throws Exception {\r
- Mockito.doThrow(new VlantagApiException()).when(policyEngineSpy).getConfigUsingPost(any());\r
- policyEngineSpy.getPolicyFromPDP("sonme_random_policy_name");\r
+ Mockito.doThrow(new VlantagApiException()).when(policyClient).getConfigUsingPost(any());\r
+ policyClient.getPolicyFromPDP("sonme_random_policy_name");\r
}\r
}\r
--- /dev/null
+/*******************************************************************************\r
+ * Copyright © 2017-2018 AT&T Intellectual Property.\r
+ * \r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ ******************************************************************************/\r
+\r
+package org.onap.ccsdk.apps.ms.vlantagapi.util;\r
+\r
+import org.onap.ccsdk.apps.ms.vlantagapi.core.exception.VlantagApiException;\r
+import org.onap.ccsdk.apps.ms.vlantagapi.core.extinf.pm.model.PolicyEngineResponse;\r
+import org.onap.ccsdk.apps.ms.vlantagapi.core.extinf.pm.model.RequestObject;\r
+import org.onap.ccsdk.apps.ms.vlantagapi.extinf.pm.PolicyManagerClient;\r
+import org.slf4j.Logger;\r
+import org.slf4j.LoggerFactory;\r
+\r
+public class MockPolicyClient extends PolicyManagerClient{\r
+ protected static final Logger logger = LoggerFactory.getLogger(MockPolicyClient.class);\r
+\r
+ \r
+ \r
+ public PolicyEngineResponse[] getConfigUsingPost(RequestObject requestObject) throws VlantagApiException {\r
+ \r
+ PolicyEngineResponse peResponse = new PolicyEngineResponse();\r
+ peResponse.setConfig("{\"riskLevel\":\"4\",\"riskType\":\"test\",\"policyName\":\"Internet_VlanTag_1810_US_VPE\",\"service\":\"vlantagResourceModel\",\"guard\":\"False\",\"description\":\"Internet_VlanTag_1810_US_VPE\",\"templateVersion\":\"1607\",\"priority\":\"4\",\"version\":\"20180709\",\"content\":{\"policy-instance-name\":\"Internet_VlanTag_1810_US_VPE\",\"resource-models\":[{\"data-store\":\"FALSE\",\"elements\":[{\"allowed-range\":[{\"min\":\"3553\",\"max\":\"3562\"}],\"recycle-vlantag-range\":\"TRUE\",\"overwrite\":\"FALSE\",\"vlantag-name\":\"VPE-Cust\"}],\"scope\":\"SITE\",\"vlan-type\":\"vlan-id-outer\",\"resource-resolution-recipe\":\"#BSB# VPE-Cust #ESB#\",\"resource-vlan-role\":\"outer-tag\"},{\"data-store\":\"TRUE\",\"elements\":[{\"allowed-range\":[{\"min\":\"3503\",\"max\":\"3503\"}],\"shared-range\":\"TRUE\",\"element-vlan-role\":\"outer-tag\",\"recycle-vlantag-range\":\"TRUE\",\"overwrite\":\"FALSE\",\"vlantag-name\":\"VPE-Cust-Outer\"},{\"allowed-range\":[{\"min\":\"4001\",\"max\":\"4012\"}],\"element-vlan-role\":\"outer-tag\",\"recycle-vlantag-range\":\"TRUE\",\"overwrite\":\"FALSE\",\"vlantag-name\":\"VPE-Core1\"},{\"allowed-range\":[{\"min\":\"4001\",\"max\":\"4012\"}],\"element-vlan-role\":\"outer-tag\",\"recycle-vlantag-range\":\"TRUE\",\"overwrite\":\"FALSE\",\"vlantag-name\":\"VPE-Core2\"}],\"scope\":\"SITE\",\"vlan-type\":\"vlan-id-filter\",\"resource-resolution-recipe\":\"#BSB# VPE-Cust-Outer, VPE-Core1, VPE-Core2 #ESB#\"}]}}");\r
+ PolicyEngineResponse[] peResponses = new PolicyEngineResponse[1];\r
+ peResponses[0] = peResponse;\r
+ \r
+ return peResponses;\r
+ }\r
+}\r