fix test for sales (#1214)
* fix test for sales * fix assingElements function * change name of the function * add wait to channels in shipping * add missing imports
This commit is contained in:
parent
bba8c75d31
commit
2412911a9d
18 changed files with 103 additions and 85 deletions
|
@ -14,8 +14,8 @@ import { CHANNELS_SELECTORS } from "../../../elements/channels/channels-selector
|
||||||
import { SELECT_CHANNELS_TO_ASSIGN } from "../../../elements/channels/select-channels-to-assign";
|
import { SELECT_CHANNELS_TO_ASSIGN } from "../../../elements/channels/select-channels-to-assign";
|
||||||
import { HEADER_SELECTORS } from "../../../elements/header/header-selectors";
|
import { HEADER_SELECTORS } from "../../../elements/header/header-selectors";
|
||||||
import { BUTTON_SELECTORS } from "../../../elements/shared/button-selectors";
|
import { BUTTON_SELECTORS } from "../../../elements/shared/button-selectors";
|
||||||
import { SHARED_ELEMENTS } from "../../../elements/shared/sharedElements";
|
|
||||||
import { createChannelByView } from "../../../steps/channelsSteps";
|
import { createChannelByView } from "../../../steps/channelsSteps";
|
||||||
|
import { waitForProgressBarToNotExist } from "../../../steps/shared/progressBar";
|
||||||
import { urlList } from "../../../url/urlList";
|
import { urlList } from "../../../url/urlList";
|
||||||
import { deleteChannelsStartsWith } from "../../../utils/channelsUtils";
|
import { deleteChannelsStartsWith } from "../../../utils/channelsUtils";
|
||||||
import { deleteShippingStartsWith } from "../../../utils/shippingUtils";
|
import { deleteShippingStartsWith } from "../../../utils/shippingUtils";
|
||||||
|
@ -70,7 +70,7 @@ describe("Channels", () => {
|
||||||
cy.addAliasToGraphRequest("InitialProductFilterAttributes");
|
cy.addAliasToGraphRequest("InitialProductFilterAttributes");
|
||||||
cy.visit(urlList.products);
|
cy.visit(urlList.products);
|
||||||
cy.wait("@InitialProductFilterAttributes");
|
cy.wait("@InitialProductFilterAttributes");
|
||||||
cy.get(SHARED_ELEMENTS.progressBar).should("not.exist");
|
waitForProgressBarToNotExist();
|
||||||
cy.get(PRODUCTS_LIST.emptyProductRow).should("not.exist");
|
cy.get(PRODUCTS_LIST.emptyProductRow).should("not.exist");
|
||||||
cy.get(PRODUCTS_LIST.productsList)
|
cy.get(PRODUCTS_LIST.productsList)
|
||||||
.first()
|
.first()
|
||||||
|
|
|
@ -10,6 +10,7 @@ import { PERMISSION_GROUP_DETAILS } from "../../../elements/permissionGroup/perm
|
||||||
import { PERMISSION_GROUP_LIST } from "../../../elements/permissionGroup/permissionGroupsList";
|
import { PERMISSION_GROUP_LIST } from "../../../elements/permissionGroup/permissionGroupsList";
|
||||||
import { BUTTON_SELECTORS } from "../../../elements/shared/button-selectors";
|
import { BUTTON_SELECTORS } from "../../../elements/shared/button-selectors";
|
||||||
import { SHARED_ELEMENTS } from "../../../elements/shared/sharedElements";
|
import { SHARED_ELEMENTS } from "../../../elements/shared/sharedElements";
|
||||||
|
import { waitForProgressBarToNotExist } from "../../../steps/shared/progressBar.js";
|
||||||
import {
|
import {
|
||||||
permissionGroupDetails,
|
permissionGroupDetails,
|
||||||
staffMemberDetailsUrl,
|
staffMemberDetailsUrl,
|
||||||
|
@ -48,9 +49,8 @@ describe("Permissions groups", () => {
|
||||||
.get(PERMISSION_GROUP_DETAILS.assignMemberButton)
|
.get(PERMISSION_GROUP_DETAILS.assignMemberButton)
|
||||||
.should("be.visible")
|
.should("be.visible")
|
||||||
.get(BUTTON_SELECTORS.back)
|
.get(BUTTON_SELECTORS.back)
|
||||||
.click()
|
.click();
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
waitForProgressBarToNotExist();
|
||||||
.should("not.exist");
|
|
||||||
cy.contains(
|
cy.contains(
|
||||||
PERMISSION_GROUP_LIST.permissionGroupRow,
|
PERMISSION_GROUP_LIST.permissionGroupRow,
|
||||||
permissionName
|
permissionName
|
||||||
|
|
|
@ -6,10 +6,10 @@ import {
|
||||||
getProductType
|
getProductType
|
||||||
} from "../../../apiRequests/productType";
|
} from "../../../apiRequests/productType";
|
||||||
import { PRODUCT_TYPE_DETAILS } from "../../../elements/productTypes/productTypeDetails";
|
import { PRODUCT_TYPE_DETAILS } from "../../../elements/productTypes/productTypeDetails";
|
||||||
import { SHARED_ELEMENTS } from "../../../elements/shared/sharedElements";
|
|
||||||
import { createProductType } from "../../../steps/productTypeSteps";
|
import { createProductType } from "../../../steps/productTypeSteps";
|
||||||
import { assignElements } from "../../../steps/shared/assignElements";
|
import { assignElements } from "../../../steps/shared/assignElements";
|
||||||
import { confirmationMessageShouldDisappear } from "../../../steps/shared/confirmationMessage";
|
import { confirmationMessageShouldDisappear } from "../../../steps/shared/confirmationMessage";
|
||||||
|
import { visitAndWaitForProgressBarToDisappear } from "../../../steps/shared/progressBar";
|
||||||
import { productTypeDetailsUrl, urlList } from "../../../url/urlList";
|
import { productTypeDetailsUrl, urlList } from "../../../url/urlList";
|
||||||
import { deleteProductsStartsWith } from "../../../utils/products/productsUtils";
|
import { deleteProductsStartsWith } from "../../../utils/products/productsUtils";
|
||||||
|
|
||||||
|
@ -62,9 +62,9 @@ describe("Tests for product types", () => {
|
||||||
|
|
||||||
createTypeProduct({ name })
|
createTypeProduct({ name })
|
||||||
.then(productType => {
|
.then(productType => {
|
||||||
cy.visit(productTypeDetailsUrl(productType.id))
|
visitAndWaitForProgressBarToDisappear(
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
productTypeDetailsUrl(productType.id)
|
||||||
.should("be.not.visible")
|
)
|
||||||
.get(PRODUCT_TYPE_DETAILS.assignProductAttributeButton)
|
.get(PRODUCT_TYPE_DETAILS.assignProductAttributeButton)
|
||||||
.click();
|
.click();
|
||||||
cy.addAliasToGraphRequest("AssignProductAttribute");
|
cy.addAliasToGraphRequest("AssignProductAttribute");
|
||||||
|
@ -83,9 +83,9 @@ describe("Tests for product types", () => {
|
||||||
|
|
||||||
createTypeProduct({ name, hasVariants: false })
|
createTypeProduct({ name, hasVariants: false })
|
||||||
.then(productType => {
|
.then(productType => {
|
||||||
cy.visit(productTypeDetailsUrl(productType.id))
|
visitAndWaitForProgressBarToDisappear(
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
productTypeDetailsUrl(productType.id)
|
||||||
.should("be.not.visible")
|
)
|
||||||
.get(PRODUCT_TYPE_DETAILS.hasVariantsButton)
|
.get(PRODUCT_TYPE_DETAILS.hasVariantsButton)
|
||||||
.click()
|
.click()
|
||||||
.get(PRODUCT_TYPE_DETAILS.assignVariantAttributeButton)
|
.get(PRODUCT_TYPE_DETAILS.assignVariantAttributeButton)
|
||||||
|
|
|
@ -11,6 +11,7 @@ import { BUTTON_SELECTORS } from "../../../../elements/shared/button-selectors";
|
||||||
import { SHARED_ELEMENTS } from "../../../../elements/shared/sharedElements";
|
import { SHARED_ELEMENTS } from "../../../../elements/shared/sharedElements";
|
||||||
import { SHIPPING_ZONE_DETAILS } from "../../../../elements/shipping/shipping-zone-details";
|
import { SHIPPING_ZONE_DETAILS } from "../../../../elements/shipping/shipping-zone-details";
|
||||||
import { selectChannelInHeader } from "../../../../steps/channelsSteps";
|
import { selectChannelInHeader } from "../../../../steps/channelsSteps";
|
||||||
|
import { waitForProgressBarToNotExist } from "../../../../steps/shared/progressBar";
|
||||||
import { getFormattedCurrencyAmount } from "../../../../support/format/formatCurrencyAmount";
|
import { getFormattedCurrencyAmount } from "../../../../support/format/formatCurrencyAmount";
|
||||||
import { urlList } from "../../../../url/urlList";
|
import { urlList } from "../../../../url/urlList";
|
||||||
import * as channelsUtils from "../../../../utils/channelsUtils";
|
import * as channelsUtils from "../../../../utils/channelsUtils";
|
||||||
|
@ -84,9 +85,8 @@ describe("Channels in shippingMethod", () => {
|
||||||
.loginUserViaRequest("auth", ONE_PERMISSION_USERS.shipping)
|
.loginUserViaRequest("auth", ONE_PERMISSION_USERS.shipping)
|
||||||
.visit(urlList.shippingMethods)
|
.visit(urlList.shippingMethods)
|
||||||
.get(SHARED_ELEMENTS.header)
|
.get(SHARED_ELEMENTS.header)
|
||||||
.should("be.visible")
|
.should("be.visible");
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
waitForProgressBarToNotExist();
|
||||||
.should("not.exist");
|
|
||||||
cy.addAliasToGraphRequest("ShippingZone");
|
cy.addAliasToGraphRequest("ShippingZone");
|
||||||
cy.getTextFromElement(SHARED_ELEMENTS.table);
|
cy.getTextFromElement(SHARED_ELEMENTS.table);
|
||||||
})
|
})
|
||||||
|
|
|
@ -88,6 +88,11 @@ describe("Sales discounts", () => {
|
||||||
price: productPrice
|
price: productPrice
|
||||||
})
|
})
|
||||||
.then(({ product: productResp }) => {
|
.then(({ product: productResp }) => {
|
||||||
|
/* Uncomment after fixing SALEOR-3367 bug
|
||||||
|
cy.clearSessionData()
|
||||||
|
.loginUserViaRequest("auth", ONE_PERMISSION_USERS.discount)
|
||||||
|
*/
|
||||||
|
|
||||||
cy.visit(urlList.sales);
|
cy.visit(urlList.sales);
|
||||||
cy.softExpectSkeletonIsVisible();
|
cy.softExpectSkeletonIsVisible();
|
||||||
const product = productResp;
|
const product = productResp;
|
||||||
|
@ -122,6 +127,11 @@ describe("Sales discounts", () => {
|
||||||
price: productPrice
|
price: productPrice
|
||||||
})
|
})
|
||||||
.then(({ product: productResp }) => {
|
.then(({ product: productResp }) => {
|
||||||
|
/* Uncomment after fixing SALEOR-3367 bug
|
||||||
|
cy.clearSessionData()
|
||||||
|
.loginUserViaRequest("auth", ONE_PERMISSION_USERS.discount)
|
||||||
|
*/
|
||||||
|
|
||||||
cy.visit(urlList.sales);
|
cy.visit(urlList.sales);
|
||||||
cy.softExpectSkeletonIsVisible();
|
cy.softExpectSkeletonIsVisible();
|
||||||
const product = productResp;
|
const product = productResp;
|
||||||
|
@ -168,6 +178,11 @@ describe("Sales discounts", () => {
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
.then(() => {
|
.then(() => {
|
||||||
|
/* Uncomment after fixing SALEOR-3367 bug
|
||||||
|
cy.clearSessionData()
|
||||||
|
.loginUserViaRequest("auth", ONE_PERMISSION_USERS.discount)
|
||||||
|
*/
|
||||||
|
|
||||||
cy.visit(urlList.sales);
|
cy.visit(urlList.sales);
|
||||||
cy.softExpectSkeletonIsVisible();
|
cy.softExpectSkeletonIsVisible();
|
||||||
createSale({
|
createSale({
|
||||||
|
|
|
@ -23,6 +23,7 @@ describe("Vouchers discounts", () => {
|
||||||
const shippingPrice = 100;
|
const shippingPrice = 100;
|
||||||
|
|
||||||
let defaultChannel;
|
let defaultChannel;
|
||||||
|
let createdChannel;
|
||||||
let productType;
|
let productType;
|
||||||
let attribute;
|
let attribute;
|
||||||
let category;
|
let category;
|
||||||
|
@ -79,7 +80,13 @@ describe("Vouchers discounts", () => {
|
||||||
price: productPrice
|
price: productPrice
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
.then(({ variantsList: variantsResp }) => (variants = variantsResp));
|
.then(({ variantsList: variantsResp }) => {
|
||||||
|
variants = variantsResp;
|
||||||
|
createChannel({ name });
|
||||||
|
})
|
||||||
|
.then(channel => {
|
||||||
|
createdChannel = channel;
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it("should create percentage voucher", () => {
|
it("should create percentage voucher", () => {
|
||||||
|
@ -124,17 +131,13 @@ describe("Vouchers discounts", () => {
|
||||||
.loginUserViaRequest()
|
.loginUserViaRequest()
|
||||||
.visit(urlList.vouchers);
|
.visit(urlList.vouchers);
|
||||||
cy.softExpectSkeletonIsVisible();
|
cy.softExpectSkeletonIsVisible();
|
||||||
createChannel({ name: randomName })
|
|
||||||
.then(channel => {
|
|
||||||
createVoucher({
|
createVoucher({
|
||||||
voucherCode: randomName,
|
voucherCode: randomName,
|
||||||
voucherValue,
|
voucherValue,
|
||||||
discountOption: discountOptions.PERCENTAGE,
|
discountOption: discountOptions.PERCENTAGE,
|
||||||
channelName: channel.name
|
channelName: createdChannel.name
|
||||||
});
|
});
|
||||||
createCheckoutForCreatedVoucher(randomName);
|
createCheckoutForCreatedVoucher(randomName).then(resp => {
|
||||||
})
|
|
||||||
.then(resp => {
|
|
||||||
const errorField = resp.checkoutErrors[0].field;
|
const errorField = resp.checkoutErrors[0].field;
|
||||||
expect(errorField).to.be.eq("promoCode");
|
expect(errorField).to.be.eq("promoCode");
|
||||||
});
|
});
|
||||||
|
|
|
@ -3,15 +3,12 @@ import faker from "faker";
|
||||||
import { createCollection } from "../../../../apiRequests/Collections";
|
import { createCollection } from "../../../../apiRequests/Collections";
|
||||||
import { updateProduct } from "../../../../apiRequests/Product";
|
import { updateProduct } from "../../../../apiRequests/Product";
|
||||||
import { PRODUCTS_LIST } from "../../../../elements/catalog/products/products-list";
|
import { PRODUCTS_LIST } from "../../../../elements/catalog/products/products-list";
|
||||||
import { SHARED_ELEMENTS } from "../../../../elements/shared/sharedElements";
|
|
||||||
import {
|
import {
|
||||||
checkFilterOption,
|
|
||||||
selectChannel,
|
selectChannel,
|
||||||
selectFilterBy,
|
|
||||||
selectFilterOption,
|
selectFilterOption,
|
||||||
selectProductsOutOfStock
|
selectProductsOutOfStock
|
||||||
} from "../../../../steps/catalog/products/productsListSteps";
|
} from "../../../../steps/catalog/products/productsListSteps";
|
||||||
import { selectChannelInHeader } from "../../../../steps/channelsSteps";
|
import { waitForProgressBarToNotExist } from "../../../../steps/shared/progressBar";
|
||||||
import { urlList } from "../../../../url/urlList";
|
import { urlList } from "../../../../url/urlList";
|
||||||
import { getDefaultChannel } from "../../../../utils/channelsUtils";
|
import { getDefaultChannel } from "../../../../utils/channelsUtils";
|
||||||
import {
|
import {
|
||||||
|
@ -92,7 +89,7 @@ describe("Filtering products", () => {
|
||||||
filterProductsBy.forEach(filterBy => {
|
filterProductsBy.forEach(filterBy => {
|
||||||
it(`should filter products by ${filterBy}`, () => {
|
it(`should filter products by ${filterBy}`, () => {
|
||||||
cy.softExpectSkeletonIsVisible();
|
cy.softExpectSkeletonIsVisible();
|
||||||
cy.get(SHARED_ELEMENTS.progressBar).should("not.exist");
|
waitForProgressBarToNotExist();
|
||||||
selectFilterOption(filterBy, name);
|
selectFilterOption(filterBy, name);
|
||||||
cy.getTextFromElement(PRODUCTS_LIST.productsNames).then(product => {
|
cy.getTextFromElement(PRODUCTS_LIST.productsNames).then(product => {
|
||||||
expect(product).to.includes(name);
|
expect(product).to.includes(name);
|
||||||
|
@ -113,7 +110,7 @@ describe("Filtering products", () => {
|
||||||
categoryId: category.id,
|
categoryId: category.id,
|
||||||
price
|
price
|
||||||
});
|
});
|
||||||
cy.get(SHARED_ELEMENTS.progressBar).should("not.exist");
|
waitForProgressBarToNotExist();
|
||||||
selectChannel(channel.slug);
|
selectChannel(channel.slug);
|
||||||
selectProductsOutOfStock();
|
selectProductsOutOfStock();
|
||||||
cy.getTextFromElement(PRODUCTS_LIST.productsNames).then(product => {
|
cy.getTextFromElement(PRODUCTS_LIST.productsNames).then(product => {
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
import { PRODUCTS_LIST } from "../../../../elements/catalog/products/products-list";
|
import { PRODUCTS_LIST } from "../../../../elements/catalog/products/products-list";
|
||||||
import { BUTTON_SELECTORS } from "../../../../elements/shared/button-selectors";
|
import { BUTTON_SELECTORS } from "../../../../elements/shared/button-selectors";
|
||||||
import { SHARED_ELEMENTS } from "../../../../elements/shared/sharedElements";
|
|
||||||
import {
|
import {
|
||||||
getDisplayedColumnArray,
|
getDisplayedColumnArray,
|
||||||
isNumberOfProductsSameAsInSelectResultsOnPage
|
isNumberOfProductsSameAsInSelectResultsOnPage
|
||||||
} from "../../../../steps/catalog/products/productsListSteps";
|
} from "../../../../steps/catalog/products/productsListSteps";
|
||||||
|
import { waitForProgressBarToNotExist } from "../../../../steps/shared/progressBar";
|
||||||
import { urlList } from "../../../../url/urlList";
|
import { urlList } from "../../../../url/urlList";
|
||||||
|
|
||||||
describe("Products", () => {
|
describe("Products", () => {
|
||||||
|
@ -25,10 +25,8 @@ describe("Products", () => {
|
||||||
productsList => (firstPageProducts = productsList)
|
productsList => (firstPageProducts = productsList)
|
||||||
);
|
);
|
||||||
cy.addAliasToGraphRequest("ProductList");
|
cy.addAliasToGraphRequest("ProductList");
|
||||||
cy.get(PRODUCTS_LIST.nextPageButton)
|
cy.get(PRODUCTS_LIST.nextPageButton).click();
|
||||||
.click()
|
waitForProgressBarToNotExist();
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
|
||||||
.should("not.exist");
|
|
||||||
cy.wait("@ProductList");
|
cy.wait("@ProductList");
|
||||||
getDisplayedColumnArray("name").then(productList => {
|
getDisplayedColumnArray("name").then(productList => {
|
||||||
expect(productList).to.not.equal(firstPageProducts);
|
expect(productList).to.not.equal(firstPageProducts);
|
||||||
|
@ -50,9 +48,8 @@ describe("Products", () => {
|
||||||
`${PRODUCTS_LIST.rowNumberOption}${BUTTON_SELECTORS.notSelectedOption}`
|
`${PRODUCTS_LIST.rowNumberOption}${BUTTON_SELECTORS.notSelectedOption}`
|
||||||
)
|
)
|
||||||
.first()
|
.first()
|
||||||
.click()
|
.click();
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
waitForProgressBarToNotExist();
|
||||||
.should("not.exist");
|
|
||||||
isNumberOfProductsSameAsInSelectResultsOnPage().then(
|
isNumberOfProductsSameAsInSelectResultsOnPage().then(
|
||||||
isTheSame =>
|
isTheSame =>
|
||||||
expect(
|
expect(
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { PRODUCTS_LIST } from "../../../../elements/catalog/products/products-list";
|
import { PRODUCTS_LIST } from "../../../../elements/catalog/products/products-list";
|
||||||
import { SHARED_ELEMENTS } from "../../../../elements/shared/sharedElements";
|
import { SHARED_ELEMENTS } from "../../../../elements/shared/sharedElements";
|
||||||
|
import { waitForProgressBarToNotExist } from "../../../../steps/shared/progressBar";
|
||||||
import { urlList } from "../../../../url/urlList";
|
import { urlList } from "../../../../url/urlList";
|
||||||
import { expectProductsSortedBy } from "../../../../utils/products/productsListUtils";
|
import { expectProductsSortedBy } from "../../../../utils/products/productsListUtils";
|
||||||
|
|
||||||
|
@ -14,15 +15,13 @@ describe("Sorting products", () => {
|
||||||
cy.get(SHARED_ELEMENTS.header).should("be.visible");
|
cy.get(SHARED_ELEMENTS.header).should("be.visible");
|
||||||
if (sortBy !== "name") {
|
if (sortBy !== "name") {
|
||||||
cy.get(PRODUCTS_LIST.tableHeaders[sortBy]).click();
|
cy.get(PRODUCTS_LIST.tableHeaders[sortBy]).click();
|
||||||
cy.get(SHARED_ELEMENTS.progressBar).should("not.exist");
|
waitForProgressBarToNotExist();
|
||||||
}
|
}
|
||||||
expectProductsSortedBy(sortBy);
|
expectProductsSortedBy(sortBy);
|
||||||
cy.addAliasToGraphRequest("ProductList")
|
cy.addAliasToGraphRequest("ProductList")
|
||||||
.get(PRODUCTS_LIST.tableHeaders[sortBy])
|
.get(PRODUCTS_LIST.tableHeaders[sortBy])
|
||||||
.click()
|
.click();
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
waitForProgressBarToNotExist().wait("@ProductList");
|
||||||
.should("not.exist")
|
|
||||||
.wait("@ProductList");
|
|
||||||
expectProductsSortedBy(sortBy, false);
|
expectProductsSortedBy(sortBy, false);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -3,8 +3,8 @@ import { PRODUCT_DETAILS } from "../../../elements/catalog/products/product-deta
|
||||||
import { VARIANTS_SELECTORS } from "../../../elements/catalog/products/variants-selectors";
|
import { VARIANTS_SELECTORS } from "../../../elements/catalog/products/variants-selectors";
|
||||||
import { AVAILABLE_CHANNELS_FORM } from "../../../elements/channels/available-channels-form";
|
import { AVAILABLE_CHANNELS_FORM } from "../../../elements/channels/available-channels-form";
|
||||||
import { BUTTON_SELECTORS } from "../../../elements/shared/button-selectors";
|
import { BUTTON_SELECTORS } from "../../../elements/shared/button-selectors";
|
||||||
import { SHARED_ELEMENTS } from "../../../elements/shared/sharedElements";
|
|
||||||
import { selectChannelVariantInDetailsPage } from "../../channelsSteps";
|
import { selectChannelVariantInDetailsPage } from "../../channelsSteps";
|
||||||
|
import { waitForProgressBarToNotBeVisible } from "../../shared/progressBar";
|
||||||
import { fillUpPriceList } from "./priceList";
|
import { fillUpPriceList } from "./priceList";
|
||||||
|
|
||||||
export function variantsShouldBeVisible({ name, price }) {
|
export function variantsShouldBeVisible({ name, price }) {
|
||||||
|
@ -32,8 +32,7 @@ export function createFirstVariant({ sku, warehouseId, price, attribute }) {
|
||||||
cy.addAliasToGraphRequest("ProductVariantBulkCreate");
|
cy.addAliasToGraphRequest("ProductVariantBulkCreate");
|
||||||
cy.get(VARIANTS_SELECTORS.nextButton).click();
|
cy.get(VARIANTS_SELECTORS.nextButton).click();
|
||||||
cy.wait("@ProductVariantBulkCreate");
|
cy.wait("@ProductVariantBulkCreate");
|
||||||
cy.get(SHARED_ELEMENTS.progressBar)
|
waitForProgressBarToNotBeVisible()
|
||||||
.should("not.be.visible")
|
|
||||||
.get(AVAILABLE_CHANNELS_FORM.menageChannelsButton)
|
.get(AVAILABLE_CHANNELS_FORM.menageChannelsButton)
|
||||||
.should("be.visible");
|
.should("be.visible");
|
||||||
}
|
}
|
||||||
|
@ -71,10 +70,8 @@ export function createVariant({
|
||||||
cy.addAliasToGraphRequest("ProductVariantChannelListingUpdate");
|
cy.addAliasToGraphRequest("ProductVariantChannelListingUpdate");
|
||||||
cy.get(VARIANTS_SELECTORS.saveButton).click();
|
cy.get(VARIANTS_SELECTORS.saveButton).click();
|
||||||
cy.wait("@ProductVariantChannelListingUpdate");
|
cy.wait("@ProductVariantChannelListingUpdate");
|
||||||
cy.get(BUTTON_SELECTORS.back)
|
cy.get(BUTTON_SELECTORS.back).click();
|
||||||
.click()
|
waitForProgressBarToNotBeVisible()
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
|
||||||
.should("not.be.visible")
|
|
||||||
.get(AVAILABLE_CHANNELS_FORM.menageChannelsButton)
|
.get(AVAILABLE_CHANNELS_FORM.menageChannelsButton)
|
||||||
.should("be.visible");
|
.should("be.visible");
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
import { PRODUCTS_LIST } from "../../../elements/catalog/products/products-list";
|
import { PRODUCTS_LIST } from "../../../elements/catalog/products/products-list";
|
||||||
import { BUTTON_SELECTORS } from "../../../elements/shared/button-selectors";
|
import { BUTTON_SELECTORS } from "../../../elements/shared/button-selectors";
|
||||||
import {
|
import { getElementByDataTestId } from "../../../elements/shared/sharedElements";
|
||||||
getElementByDataTestId,
|
import { waitForProgressBarToNotExist } from "../../shared/progressBar";
|
||||||
SHARED_ELEMENTS
|
|
||||||
} from "../../../elements/shared/sharedElements";
|
|
||||||
|
|
||||||
export function isNumberOfProductsSameAsInSelectResultsOnPage() {
|
export function isNumberOfProductsSameAsInSelectResultsOnPage() {
|
||||||
let numberOfResults;
|
let numberOfResults;
|
||||||
|
@ -68,10 +66,8 @@ export function selectChannel(channelSlug) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function submitFilters() {
|
function submitFilters() {
|
||||||
cy.get(BUTTON_SELECTORS.submit)
|
cy.get(BUTTON_SELECTORS.submit).click();
|
||||||
.click()
|
waitForProgressBarToNotExist()
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
|
||||||
.should("not.exist")
|
|
||||||
.get(PRODUCTS_LIST.emptyProductRow)
|
.get(PRODUCTS_LIST.emptyProductRow)
|
||||||
.should("not.exist");
|
.should("not.exist");
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,8 @@ import { ASSIGN_ELEMENTS_SELECTORS } from "../../elements/shared/assign-elements
|
||||||
import { BUTTON_SELECTORS } from "../../elements/shared/button-selectors";
|
import { BUTTON_SELECTORS } from "../../elements/shared/button-selectors";
|
||||||
import { formatDate } from "../../support/format/formatDate";
|
import { formatDate } from "../../support/format/formatDate";
|
||||||
import { selectChannelInDetailsPages } from "../channelsSteps";
|
import { selectChannelInDetailsPages } from "../channelsSteps";
|
||||||
|
import { confirmationMessageShouldDisappear } from "../shared/confirmationMessage";
|
||||||
|
import { waitForProgressBarToNotBeVisible } from "../shared/progressBar";
|
||||||
|
|
||||||
export const discountOptions = {
|
export const discountOptions = {
|
||||||
PERCENTAGE: SALES_SELECTORS.percentageOption,
|
PERCENTAGE: SALES_SELECTORS.percentageOption,
|
||||||
|
@ -17,8 +19,8 @@ export function createSale({
|
||||||
}) {
|
}) {
|
||||||
const todaysDate = formatDate(new Date());
|
const todaysDate = formatDate(new Date());
|
||||||
|
|
||||||
cy.get(SALES_SELECTORS.createSaleButton)
|
cy.get(SALES_SELECTORS.createSaleButton).click();
|
||||||
.click()
|
waitForProgressBarToNotBeVisible()
|
||||||
.get(SALES_SELECTORS.nameInput)
|
.get(SALES_SELECTORS.nameInput)
|
||||||
.type(saleName)
|
.type(saleName)
|
||||||
.get(discountOption)
|
.get(discountOption)
|
||||||
|
@ -30,11 +32,13 @@ export function createSale({
|
||||||
.type(todaysDate);
|
.type(todaysDate);
|
||||||
cy.addAliasToGraphRequest("SaleCreate");
|
cy.addAliasToGraphRequest("SaleCreate");
|
||||||
cy.get(SALES_SELECTORS.saveButton).click();
|
cy.get(SALES_SELECTORS.saveButton).click();
|
||||||
|
confirmationMessageShouldDisappear();
|
||||||
cy.wait("@SaleCreate");
|
cy.wait("@SaleCreate");
|
||||||
}
|
}
|
||||||
|
|
||||||
export function assignProducts(productName) {
|
export function assignProducts(productName) {
|
||||||
cy.get(SALES_SELECTORS.productsTab)
|
waitForProgressBarToNotBeVisible()
|
||||||
|
.get(SALES_SELECTORS.productsTab)
|
||||||
.click()
|
.click()
|
||||||
.get(SALES_SELECTORS.assignProducts)
|
.get(SALES_SELECTORS.assignProducts)
|
||||||
.click()
|
.click()
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import { VOUCHERS_SELECTORS } from "../../elements/discounts/vouchers";
|
import { VOUCHERS_SELECTORS } from "../../elements/discounts/vouchers";
|
||||||
import { BUTTON_SELECTORS } from "../../elements/shared/button-selectors";
|
import { BUTTON_SELECTORS } from "../../elements/shared/button-selectors";
|
||||||
import { selectChannelInDetailsPages } from "../channelsSteps";
|
import { selectChannelInDetailsPages } from "../channelsSteps";
|
||||||
|
import { confirmationMessageShouldDisappear } from "../shared/confirmationMessage";
|
||||||
|
|
||||||
export const discountOptions = {
|
export const discountOptions = {
|
||||||
PERCENTAGE: VOUCHERS_SELECTORS.percentageDiscountRadioButton,
|
PERCENTAGE: VOUCHERS_SELECTORS.percentageDiscountRadioButton,
|
||||||
|
@ -24,4 +25,5 @@ export function createVoucher({
|
||||||
cy.get(VOUCHERS_SELECTORS.discountValueInputs).type(voucherValue);
|
cy.get(VOUCHERS_SELECTORS.discountValueInputs).type(voucherValue);
|
||||||
}
|
}
|
||||||
cy.get(BUTTON_SELECTORS.confirm).click();
|
cy.get(BUTTON_SELECTORS.confirm).click();
|
||||||
|
confirmationMessageShouldDisappear();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +1,11 @@
|
||||||
import { PRODUCT_TYPE_DETAILS } from "../elements/productTypes/productTypeDetails";
|
import { PRODUCT_TYPE_DETAILS } from "../elements/productTypes/productTypeDetails";
|
||||||
import { PRODUCT_TYPES_LIST } from "../elements/productTypes/productTypesList";
|
import { PRODUCT_TYPES_LIST } from "../elements/productTypes/productTypesList";
|
||||||
import { BUTTON_SELECTORS } from "../elements/shared/button-selectors";
|
import { BUTTON_SELECTORS } from "../elements/shared/button-selectors";
|
||||||
import { SHARED_ELEMENTS } from "../elements/shared/sharedElements";
|
import { waitForProgressBarToNotBeVisible } from "./shared/progressBar";
|
||||||
|
|
||||||
export function createProductType(name, shippingWeight) {
|
export function createProductType(name, shippingWeight) {
|
||||||
cy.get(PRODUCT_TYPES_LIST.addProductTypeButton)
|
cy.get(PRODUCT_TYPES_LIST.addProductTypeButton).click();
|
||||||
.click()
|
waitForProgressBarToNotBeVisible()
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
|
||||||
.should("be.not.visible")
|
|
||||||
.get(PRODUCT_TYPE_DETAILS.nameInput)
|
.get(PRODUCT_TYPE_DETAILS.nameInput)
|
||||||
.type(name);
|
.type(name);
|
||||||
if (shippingWeight) {
|
if (shippingWeight) {
|
||||||
|
|
|
@ -1,12 +1,11 @@
|
||||||
import { ASSIGN_ELEMENTS_SELECTORS } from "../../elements/shared/assign-elements-selectors";
|
import { ASSIGN_ELEMENTS_SELECTORS } from "../../elements/shared/assign-elements-selectors";
|
||||||
import { SHARED_ELEMENTS } from "../../elements/shared/sharedElements";
|
import { waitForProgressBarToNotBeVisible } from "./progressBar";
|
||||||
|
|
||||||
export function assignElements(name, withLoader = true) {
|
export function assignElements(name, withLoader = true) {
|
||||||
cy.get(ASSIGN_ELEMENTS_SELECTORS.searchInput).type(name);
|
cy.get(ASSIGN_ELEMENTS_SELECTORS.searchInput).type(name);
|
||||||
if (withLoader) {
|
if (withLoader) {
|
||||||
cy.get(ASSIGN_ELEMENTS_SELECTORS.dialogContent)
|
cy.get(ASSIGN_ELEMENTS_SELECTORS.dialogContent);
|
||||||
.find(SHARED_ELEMENTS.progressBar)
|
waitForProgressBarToNotBeVisible();
|
||||||
.should("not.exist");
|
|
||||||
}
|
}
|
||||||
cy.contains(ASSIGN_ELEMENTS_SELECTORS.tableRow, name)
|
cy.contains(ASSIGN_ELEMENTS_SELECTORS.tableRow, name)
|
||||||
.find(ASSIGN_ELEMENTS_SELECTORS.checkbox)
|
.find(ASSIGN_ELEMENTS_SELECTORS.checkbox)
|
||||||
|
|
14
cypress/steps/shared/progressBar.js
Normal file
14
cypress/steps/shared/progressBar.js
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
import { SHARED_ELEMENTS } from "../../elements/shared/sharedElements";
|
||||||
|
|
||||||
|
export function visitAndWaitForProgressBarToDisappear(url) {
|
||||||
|
cy.visit(url);
|
||||||
|
return waitForProgressBarToNotBeVisible();
|
||||||
|
}
|
||||||
|
|
||||||
|
export function waitForProgressBarToNotBeVisible() {
|
||||||
|
return cy.get(SHARED_ELEMENTS.progressBar).should("be.not.visible");
|
||||||
|
}
|
||||||
|
|
||||||
|
export function waitForProgressBarToNotExist() {
|
||||||
|
return cy.get(SHARED_ELEMENTS.progressBar).should("not.exist");
|
||||||
|
}
|
|
@ -4,6 +4,7 @@ import { SHIPPING_RATE_DETAILS } from "../elements/shipping/shipping-rate-detail
|
||||||
import { SHIPPING_ZONE_DETAILS } from "../elements/shipping/shipping-zone-details";
|
import { SHIPPING_ZONE_DETAILS } from "../elements/shipping/shipping-zone-details";
|
||||||
import { SHIPPING_ZONES_LIST } from "../elements/shipping/shipping-zones-list";
|
import { SHIPPING_ZONES_LIST } from "../elements/shipping/shipping-zones-list";
|
||||||
import { confirmationMessageShouldDisappear } from "./shared/confirmationMessage";
|
import { confirmationMessageShouldDisappear } from "./shared/confirmationMessage";
|
||||||
|
import { waitForProgressBarToNotBeVisible } from "./shared/progressBar";
|
||||||
import { fillBaseSelect } from "./shared/selects";
|
import { fillBaseSelect } from "./shared/selects";
|
||||||
|
|
||||||
export function createShippingZone(
|
export function createShippingZone(
|
||||||
|
@ -88,11 +89,9 @@ export function enterAndFillUpShippingRate({
|
||||||
weightLimits,
|
weightLimits,
|
||||||
deliveryTime
|
deliveryTime
|
||||||
}) {
|
}) {
|
||||||
cy.get(rateOption)
|
cy.get(rateOption).click();
|
||||||
.click()
|
waitForProgressBarToNotBeVisible();
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
cy.get(SHARED_ELEMENTS.richTextEditor.empty)
|
||||||
.should("not.be.visible")
|
|
||||||
.get(SHARED_ELEMENTS.richTextEditor.empty)
|
|
||||||
.should("exist")
|
.should("exist")
|
||||||
.get(SHIPPING_RATE_DETAILS.inputName)
|
.get(SHIPPING_RATE_DETAILS.inputName)
|
||||||
.type(rateName);
|
.type(rateName);
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
import { SET_PASSWORD } from "../elements/account/setPassword";
|
import { SET_PASSWORD } from "../elements/account/setPassword";
|
||||||
import { BUTTON_SELECTORS } from "../elements/shared/button-selectors";
|
import { BUTTON_SELECTORS } from "../elements/shared/button-selectors";
|
||||||
import { SHARED_ELEMENTS } from "../elements/shared/sharedElements";
|
|
||||||
import { INVITE_STAFF_MEMBER_FORM } from "../elements/staffMembers/inviteStaffMemberForm";
|
import { INVITE_STAFF_MEMBER_FORM } from "../elements/staffMembers/inviteStaffMemberForm";
|
||||||
import { STAFF_MEMBER_DETAILS } from "../elements/staffMembers/staffMemberDetails";
|
import { STAFF_MEMBER_DETAILS } from "../elements/staffMembers/staffMemberDetails";
|
||||||
import { userDetailsUrl } from "../url/urlList";
|
import { userDetailsUrl } from "../url/urlList";
|
||||||
|
import { visitAndWaitForProgressBarToDisappear } from "./shared/progressBar";
|
||||||
import { fillAutocompleteSelect } from "./shared/selects";
|
import { fillAutocompleteSelect } from "./shared/selects";
|
||||||
|
|
||||||
export function fillUpSetPassword(password) {
|
export function fillUpSetPassword(password) {
|
||||||
|
@ -34,9 +34,7 @@ export function fillUpUserDetails(firstName, lastName, email) {
|
||||||
}
|
}
|
||||||
|
|
||||||
export function updateUserActiveFlag(userId) {
|
export function updateUserActiveFlag(userId) {
|
||||||
cy.visit(userDetailsUrl(userId))
|
visitAndWaitForProgressBarToDisappear(userDetailsUrl(userId))
|
||||||
.get(SHARED_ELEMENTS.progressBar)
|
|
||||||
.should("not.be.visible")
|
|
||||||
.get(STAFF_MEMBER_DETAILS.isActiveCheckBox)
|
.get(STAFF_MEMBER_DETAILS.isActiveCheckBox)
|
||||||
.click()
|
.click()
|
||||||
.addAliasToGraphRequest("StaffMemberUpdate");
|
.addAliasToGraphRequest("StaffMemberUpdate");
|
||||||
|
|
Loading…
Reference in a new issue