import org.onap.sdc.toscaparser.api.CapabilityAssignments;
import org.onap.sdc.toscaparser.api.NodeTemplate;
import org.onap.sdc.toscaparser.api.RequirementAssignment;
+import org.onap.sdc.toscaparser.api.RequirementAssignments;
import org.onap.sdc.toscaparser.api.elements.Metadata;
/**
private static final String MEMORY_PAGE_SIZE_PATH = "virtual_memory#vdu_memory_requirements#memoryPageSize";
private static final String NETWORK_INTERFACE_TYPE_PATH =
"virtual_network_interface_requirements#network_interface_requirements#interfaceType";
- private static final String NETWORK_PCI_PATH = "virtual_network_interface_requirements#nic_io_requirements";
+ private static final String NETWORK_PCI_PATH =
+ "virtual_network_interface_requirements#nic_io_requirements#logical_node_requirements";
private static final String BASIC_CAPABILITIES_HPA_FEATURE = "BasicCapabilities";
private static final String HUGE_PAGES_HPA_FEATURE = "hugePages";
private static final Map<String, String> NETWORK_HPA_FEATURE_MAP =
flavorDirective.setType("flavor_directives");
flavorDirective.getAttributes().add(flavorAttribute);
final FlavorFeature flavorFeature = new FlavorFeature();
- flavorFeature.setId(sdcCsarHelper.getNodeTemplatePropertyLeafValue(node, "name"));
+ flavorFeature.setId(node.toString());
+ LOGGER.debug("the name of node =" + node.toString());
flavorFeature.getDirectives().add(flavorDirective);
final CapabilityAssignments capabilityAssignments = sdcCsarHelper.getCapabilitiesOf(node);
return;
}
- for (final RequirementAssignment requriement : sdcCsarHelper.getRequirementsOf(node).getAll()) {
- final String nodeTemplateName = requriement.getNodeTemplateName().toLowerCase();
+ final RequirementAssignments requriements =
+ sdcCsarHelper.getRequirementsOf(node).getRequirementsByName("virtual_binding");
+ for (final RequirementAssignment requriement : requriements.getAll()) {
+ final String nodeTemplateName = requriement.getNodeTemplateName();
LOGGER.debug("getNodeTemplateName =" + nodeTemplateName);
if (nodeTemplateName == null) {
continue;
assertTrue(policy.getConfigBody().contains("\"version\":\"1.0\""));
assertTrue(policy.getConfigBody().contains("\"policyType\":\"Optimization\""));
- assertTrue(policy.getConfigBody().contains("\"id\":\"vdu_vnf_1\""));
+ assertTrue(policy.getConfigBody().contains("\"id\":\"VDU_vnf_1\""));
assertTrue(policy.getConfigBody().contains("\"type\":\"tosca.node.nfv.Vdu.Compute\""));
assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directives\""));
assertTrue(policy.getConfigBody().contains("\"hpa-feature\":\"BasicCapabilities\""));
assertTrue(policy.getConfigBody().contains("\"version\":\"1.0\""));
assertTrue(policy.getConfigBody().contains("\"policyType\":\"Optimization\""));
- assertTrue(policy.getConfigBody().contains("\"id\":\"vdu_vnf_1\""));
+ assertTrue(policy.getConfigBody().contains("\"id\":\"VDU_vnf_1\""));
assertTrue(policy.getConfigBody().contains("\"type\":\"tosca.node.nfv.Vdu.Compute\""));
assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directives\""));
assertTrue(policy.getConfigBody().contains("\"attribute_name\":\"flavorName\""));
assertTrue(policy.getConfigBody().contains("\"version\":\"1.0\""));
assertTrue(policy.getConfigBody().contains("\"policyType\":\"Optimization\""));
- assertTrue(policy.getConfigBody().contains("\"id\":\"vdu_vnf_1\""));
+ assertTrue(policy.getConfigBody().contains("\"id\":\"VDU_vnf_1\""));
assertTrue(policy.getConfigBody().contains("\"type\":\"tosca.node.nfv.Vdu.Compute\""));
assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directives\""));
assertTrue(policy.getConfigBody().contains("\"attribute_name\":\"flavorName\""));
assertTrue(policy.getConfigBody().contains("\"version\":\"1.0\""));
assertTrue(policy.getConfigBody().contains("\"policyType\":\"Optimization\""));
- assertTrue(policy.getConfigBody().contains("\"id\":\"vdu_vnf_1\""));
+ assertTrue(policy.getConfigBody().contains("\"id\":\"VDU_vnf_1\""));
assertTrue(policy.getConfigBody().contains("\"type\":\"tosca.node.nfv.Vdu.Compute\""));
assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directives\""));
assertTrue(policy.getConfigBody().contains("\"attribute_name\":\"flavorName\""));
assertTrue(policy.getConfigBody().contains("\"operator\":\"\""));
assertTrue(policy.getConfigBody().contains("\"unit\":\"MB\""));
}
+
+ @Test
+ public void testS3p0PciVendorId() throws IOException, PolicyDecodingException {
+ final Csar csar = new Csar("src/test/resources/s3p_0_pciVendorId.csar");
+ final PolicyDecoderCsarPdpx policyDecoderCsarPdpx = new PolicyDecoderCsarPdpx();
+ policyDecoderCsarPdpx.configure(CSAR_TO_OPTIMIZATION_POLICY_CONFIGURATION);
+
+ final Collection<OptimizationPolicy> policies = policyDecoderCsarPdpx.decode(csar);
+ assertEquals(1, policies.size());
+ final OptimizationPolicy policy = (OptimizationPolicy) policies.toArray()[0];
+
+ assertEquals("onapName", policy.getOnapName());
+ assertTrue(policy.getPolicyName().startsWith("OOF."));
+ assertTrue(policy.getConfigBody().contains("\"priority\":\"5\""));
+ assertTrue(policy.getConfigBody().contains("\"riskLevel\":\"2\""));
+ assertTrue(policy.getConfigBody().contains("\"riskType\":\"Test\""));
+ assertTrue(policy.getConfigBody().contains("\"version\":\"1.0\""));
+ assertTrue(policy.getConfigBody().contains("\"policyType\":\"Optimization\""));
+
+ assertTrue(policy.getConfigBody().contains("\"id\":\"VDU_vgw_0\""));
+ assertTrue(policy.getConfigBody().contains("\"type\":\"tosca.node.nfv.Vdu.Compute\""));
+ assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directives\""));
+ assertTrue(policy.getConfigBody().contains("\"attribute_name\":\"flavorName\""));
+ assertTrue(policy.getConfigBody().contains("\"attribute_value\":\"\""));
+ assertTrue(policy.getConfigBody().contains("\"hpa-feature\":\"pciePassthrough\""));
+ assertTrue(policy.getConfigBody().contains("\"mandatory\":\"true\""));
+ assertTrue(policy.getConfigBody().contains("\"architecture\":\"generic\""));
+ assertTrue(policy.getConfigBody().contains("\"hpa-version\":\"v1\""));
+ assertTrue(policy.getConfigBody().contains("\"hpa-attribute-key\":\"pciVendorId\""));
+ assertTrue(policy.getConfigBody().contains("\"hpa-attribute-value\":\"1234\""));
+ assertTrue(policy.getConfigBody().contains("\"operator\":\"\""));
+ assertTrue(policy.getConfigBody().contains("\"unit\":\"\""));
+
+ }
}