saleor-dashboard/cypress/steps/products/VariantsSteps.js

47 lines
1.6 KiB
JavaScript
Raw Normal View History

2021-02-19 08:45:34 +00:00
import { PRODUCTS_SELECTORS } from "../../elements/catalog/product-selectors";
2021-02-17 10:47:23 +00:00
import { VARIANTS_SELECTORS } from "../../elements/catalog/variants-selectors";
class VariantsSteps {
2021-02-19 08:45:34 +00:00
createFirstVariant(sku, warehouseId, price) {
2021-02-17 10:47:23 +00:00
cy.get(PRODUCTS_SELECTORS.addVariantsButton)
.click()
.get(VARIANTS_SELECTORS.attributeCheckbox)
.first()
.click()
.get(VARIANTS_SELECTORS.nextButton)
.click()
.get(VARIANTS_SELECTORS.priceInput)
2021-02-19 08:45:34 +00:00
.forEach(priceInput => cy.priceInput.type(price));
cy.get(`[name*='${warehouseId}']`)
2021-02-17 10:47:23 +00:00
.click()
.get(VARIANTS_SELECTORS.nextButton)
.click()
.get(VARIANTS_SELECTORS.skuInput)
2021-02-19 08:45:34 +00:00
.type(sku);
cy.waitForGraph("ProductVariantBulkCreate");
cy.get(VARIANTS_SELECTORS.nextButton).click();
cy.wait("@ProductVariantBulkCreate");
2021-02-17 10:47:23 +00:00
}
2021-02-19 08:45:34 +00:00
createVariant(sku, warehouseName, price, costPrice = price) {
2021-02-17 10:47:23 +00:00
cy.get(PRODUCTS_SELECTORS.addVariantsButton)
.click()
.get(VARIANTS_SELECTORS.attributeSelector)
.click()
.get(VARIANTS_SELECTORS.attributeOption)
.first()
.click()
.get(VARIANTS_SELECTORS.priceInput)
2021-02-19 08:45:34 +00:00
.type(price)
.get(VARIANTS_SELECTORS.costPriceInput)
.type(costPrice)
2021-02-17 10:47:23 +00:00
.get(VARIANTS_SELECTORS.skuInputInAddVariant)
.type(sku)
.get(VARIANTS_SELECTORS.addWarehouseButton)
.click();
2021-02-19 08:45:34 +00:00
cy.contains(VARIANTS_SELECTORS.warehouseOption, warehouseName).click();
cy.waitForGraph("VariantCreate");
cy.get(VARIANTS_SELECTORS.saveButton).click();
cy.wait("@VariantCreate");
2021-02-17 10:47:23 +00:00
}
}
export default VariantsSteps;