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

57 lines
1.8 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-25 09:51:52 +00:00
createFirstVariant({ sku, warehouseId, price, attribute }) {
cy.get(PRODUCTS_SELECTORS.addVariantsButton).click();
2021-02-26 14:32:01 +00:00
cy.get(VARIANTS_SELECTORS.valueContainer)
.contains(attribute)
.find(VARIANTS_SELECTORS.attributeCheckbox)
2021-02-17 10:47:23 +00:00
.click()
.get(VARIANTS_SELECTORS.nextButton)
2021-02-24 19:35:37 +00:00
.click();
const priceInput = cy.get(VARIANTS_SELECTORS.priceInput);
if (Array.isArray(priceInput)) {
priceInput.forEach(input => input.type(price));
} else {
priceInput.type(price);
}
2021-02-19 08:45:34 +00:00
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);
2021-02-24 19:35:37 +00:00
cy.addAliasToGraphRequest("ProductVariantBulkCreate");
2021-02-19 08:45:34 +00:00
cy.get(VARIANTS_SELECTORS.nextButton).click();
cy.wait("@ProductVariantBulkCreate");
2021-02-17 10:47:23 +00:00
}
2021-02-26 14:32:01 +00:00
createVariant({
sku,
warehouseName,
attributeName,
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)
2021-02-26 14:32:01 +00:00
.contains(attributeName)
2021-02-17 10:47:23 +00:00
.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();
2021-02-24 19:35:37 +00:00
cy.addAliasToGraphRequest("VariantCreate");
2021-02-19 08:45:34 +00:00
cy.get(VARIANTS_SELECTORS.saveButton).click();
cy.wait("@VariantCreate");
2021-02-17 10:47:23 +00:00
}
}
export default VariantsSteps;