import org.onap.sdc.backend.ci.tests.datatypes.enums.ResourceCategoryEnum;
import org.onap.sdc.backend.ci.tests.utils.general.ElementFactory;
import org.onap.sdc.frontend.ci.tests.datatypes.ComponentData;
+import org.onap.sdc.frontend.ci.tests.datatypes.ModelName;
import org.onap.sdc.frontend.ci.tests.datatypes.ResourceCreateData;
import org.onap.sdc.frontend.ci.tests.exception.UnzipException;
import org.onap.sdc.frontend.ci.tests.execute.setup.DriverFactory;
private ResourceCreateData vfcCreateData;
private ResourceCreateData vfCreateData;
private ComponentInstance createdComponentInstance;
+ private final String vfcCategory = ResourceCategoryEnum.NETWORK_L4.getSubCategory();
@BeforeClass
public void beforeClass() {
homePage = new HomePage(webDriver);
// TC - Import VFC with root namespace
String fileName = "org.openecomp.resource.VFC-root.yml";
- CreateVfcFlow createVfcFlow = createVFC(fileName);
+ CreateVfcFlow createVfcFlow = createVFC(fileName, ModelName.DEFAULT_MODEL_NAME.getName(), vfcCategory);
componentPage = createVfcFlow.getLandedPage().orElseThrow(() -> new UiTestFlowRuntimeException("Missing expected return ResourceCreatePage"));
componentPage.isLoaded();
// TC - Import hierarchy of VFCs
fileName = "org.openecomp.resource.VFC-child.yml";
- createVfcFlow = createVFC(fileName);
+ createVfcFlow = createVFC(fileName, ModelName.DEFAULT_MODEL_NAME.getName(), vfcCategory);
componentPage = createVfcFlow.getLandedPage().orElseThrow(() -> new UiTestFlowRuntimeException("Missing expected return ResourceCreatePage"));
componentPage.isLoaded();
}
+ @Test
+ public void importVfcWithModel() {
+ final String fileName = "VFC-For-Model.yaml";
+ final CreateVfcFlow createVfcFlow = createVFC(fileName, ModelName.ETSI_SOL001_v2_5_1.getName(), vfcCategory);
+ final ComponentPage componentPage = createVfcFlow.getLandedPage()
+ .orElseThrow(() -> new UiTestFlowRuntimeException("Missing expected return ResourceCreatePage"));
+ componentPage.isLoaded();
+ componentPage.certifyComponent();
+ componentPage.isLoaded();
+ }
+
private ComponentPage manageAttributes(final ComponentPage componentPage) {
final AttributesPage attributesPage = componentPage.goToAttributes();
attributesPage.isLoaded();
return downloadCsarArtifactFlow;
}
- private CreateVfcFlow createVFC(final String fileName) {
- vfcCreateData = createVfcFormData();
+ private CreateVfcFlow createVFC(final String fileName, final String model, final String category) {
+ vfcCreateData = createVfcFormData(model, category);
final CreateVfcFlow createVfcFlow = new CreateVfcFlow(webDriver, vfcCreateData, filePath + fileName);
createVfcFlow.run(homePage);
return createVfcFlow;
return createVfFlow;
}
- private ResourceCreateData createVfcFormData() {
+ private ResourceCreateData createVfcFormData(final String model, final String category) {
final ResourceCreateData vfcCreateData = new ResourceCreateData();
vfcCreateData.setRandomName(ElementFactory.getResourcePrefix() + "-VFC");
- vfcCreateData.setCategory(ResourceCategoryEnum.NETWORK_L4.getSubCategory());
+ vfcCreateData.setModel(model);
+ vfcCreateData.setCategory(category);
vfcCreateData.setTagList(Arrays.asList(vfcCreateData.getName(), "importVFC"));
vfcCreateData.setDescription("aDescription");
vfcCreateData.setVendorName("Ericsson");
public void isLoaded() {
super.isLoaded();
waitForElementVisibility(By.xpath(XpathSelector.NAME_INPUT.getXpath()));
+ waitForElementVisibility(By.xpath(XpathSelector.MODEL_SELECT.getXpath()));
waitForElementVisibility(By.xpath(XpathSelector.CATEGORY_SELECT.getXpath()));
waitForElementVisibility(By.xpath(XpathSelector.DESCRIPTION_TEXT_AREA.getXpath()));
}
public void fillForm(final ResourceCreateData resourceCreateData) {
fillName(resourceCreateData.getName());
+ setModel(resourceCreateData.getModel());
setCategory(resourceCreateData.getCategory());
defineTags(resourceCreateData.getTagList());
fillDescription(resourceCreateData.getDescription());
return findElement(XpathSelector.NAME_INPUT.getXpath()).getText();
}
+ private void setModel(final String model) {
+ if (model == null) {
+ return;
+ }
+ setSelectField(By.xpath(XpathSelector.MODEL_SELECT.getXpath()), model);
+ }
+
private void setCategory(final String category) {
setSelectField(By.xpath(XpathSelector.CATEGORY_SELECT.getXpath()), category);
}
@AllArgsConstructor
private enum XpathSelector {
NAME_INPUT("name", "//input[@data-tests-id='%s']"),
+ MODEL_SELECT("selectModelName", "//select[@data-tests-id='%s']"),
CATEGORY_SELECT("selectGeneralCategory", "//select[@data-tests-id='%s']"),
TAGS("i-sdc-tag-input", "//input[@data-tests-id='%s']"),
DESCRIPTION_TEXT_AREA("description", "//textarea[@data-tests-id='%s']"),