@shopware-ag/acceptance-test-suite 2.6.0 → 2.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +23 -1
- package/dist/index.d.ts +23 -1
- package/dist/index.mjs +511 -374
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { test as test$
|
|
1
|
+
import { test as test$e, expect, request, mergeTests } from '@playwright/test';
|
|
2
2
|
export * from '@playwright/test';
|
|
3
3
|
import { Image } from 'image-js';
|
|
4
4
|
import crypto from 'crypto';
|
|
@@ -225,7 +225,7 @@ const getPromotionWithDiscount = async (promotionId, adminApiContext) => {
|
|
|
225
225
|
return promotion[0];
|
|
226
226
|
};
|
|
227
227
|
|
|
228
|
-
const test$
|
|
228
|
+
const test$c = test$e.extend({
|
|
229
229
|
SalesChannelBaseConfig: [
|
|
230
230
|
async ({ AdminApiContext }, use) => {
|
|
231
231
|
const requests = {
|
|
@@ -370,16 +370,16 @@ const test$b = test$d.extend({
|
|
|
370
370
|
]
|
|
371
371
|
});
|
|
372
372
|
|
|
373
|
-
var __defProp$
|
|
374
|
-
var __defNormalProp$
|
|
375
|
-
var __publicField$
|
|
376
|
-
__defNormalProp$
|
|
373
|
+
var __defProp$u = Object.defineProperty;
|
|
374
|
+
var __defNormalProp$u = (obj, key, value) => key in obj ? __defProp$u(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
375
|
+
var __publicField$u = (obj, key, value) => {
|
|
376
|
+
__defNormalProp$u(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
377
377
|
return value;
|
|
378
378
|
};
|
|
379
379
|
const _AdminApiContext = class _AdminApiContext {
|
|
380
380
|
constructor(context, options) {
|
|
381
|
-
__publicField$
|
|
382
|
-
__publicField$
|
|
381
|
+
__publicField$u(this, "context");
|
|
382
|
+
__publicField$u(this, "options");
|
|
383
383
|
this.context = context;
|
|
384
384
|
this.options = options;
|
|
385
385
|
}
|
|
@@ -471,7 +471,7 @@ const _AdminApiContext = class _AdminApiContext {
|
|
|
471
471
|
return this.context.head(url, options);
|
|
472
472
|
}
|
|
473
473
|
};
|
|
474
|
-
__publicField$
|
|
474
|
+
__publicField$u(_AdminApiContext, "defaultOptions", {
|
|
475
475
|
app_url: process.env["APP_URL"],
|
|
476
476
|
client_id: process.env["SHOPWARE_ACCESS_KEY_ID"],
|
|
477
477
|
client_secret: process.env["SHOPWARE_SECRET_ACCESS_KEY"],
|
|
@@ -481,16 +481,16 @@ __publicField$t(_AdminApiContext, "defaultOptions", {
|
|
|
481
481
|
});
|
|
482
482
|
let AdminApiContext = _AdminApiContext;
|
|
483
483
|
|
|
484
|
-
var __defProp$
|
|
485
|
-
var __defNormalProp$
|
|
486
|
-
var __publicField$
|
|
487
|
-
__defNormalProp$
|
|
484
|
+
var __defProp$t = Object.defineProperty;
|
|
485
|
+
var __defNormalProp$t = (obj, key, value) => key in obj ? __defProp$t(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
486
|
+
var __publicField$t = (obj, key, value) => {
|
|
487
|
+
__defNormalProp$t(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
488
488
|
return value;
|
|
489
489
|
};
|
|
490
490
|
const _StoreApiContext = class _StoreApiContext {
|
|
491
491
|
constructor(context, options) {
|
|
492
|
-
__publicField$
|
|
493
|
-
__publicField$
|
|
492
|
+
__publicField$t(this, "context");
|
|
493
|
+
__publicField$t(this, "options");
|
|
494
494
|
this.context = context;
|
|
495
495
|
this.options = options;
|
|
496
496
|
}
|
|
@@ -549,21 +549,21 @@ const _StoreApiContext = class _StoreApiContext {
|
|
|
549
549
|
return this.context.head(url, options);
|
|
550
550
|
}
|
|
551
551
|
};
|
|
552
|
-
__publicField$
|
|
552
|
+
__publicField$t(_StoreApiContext, "defaultOptions", {
|
|
553
553
|
app_url: process.env["APP_URL"],
|
|
554
554
|
ignoreHTTPSErrors: true
|
|
555
555
|
});
|
|
556
556
|
let StoreApiContext = _StoreApiContext;
|
|
557
557
|
|
|
558
|
-
var __defProp$
|
|
559
|
-
var __defNormalProp$
|
|
560
|
-
var __publicField$
|
|
561
|
-
__defNormalProp$
|
|
558
|
+
var __defProp$s = Object.defineProperty;
|
|
559
|
+
var __defNormalProp$s = (obj, key, value) => key in obj ? __defProp$s(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
560
|
+
var __publicField$s = (obj, key, value) => {
|
|
561
|
+
__defNormalProp$s(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
562
562
|
return value;
|
|
563
563
|
};
|
|
564
564
|
class MailpitApiContext {
|
|
565
565
|
constructor(context) {
|
|
566
|
-
__publicField$
|
|
566
|
+
__publicField$s(this, "context");
|
|
567
567
|
this.context = context;
|
|
568
568
|
}
|
|
569
569
|
/**
|
|
@@ -665,7 +665,7 @@ class MailpitApiContext {
|
|
|
665
665
|
}
|
|
666
666
|
}
|
|
667
667
|
|
|
668
|
-
const test$
|
|
668
|
+
const test$b = test$e.extend({
|
|
669
669
|
AdminApiContext: [
|
|
670
670
|
async ({}, use) => {
|
|
671
671
|
const adminApiContext = await AdminApiContext.create();
|
|
@@ -748,7 +748,7 @@ const isThemeCompiled = async (context, storefrontUrl) => {
|
|
|
748
748
|
return false;
|
|
749
749
|
};
|
|
750
750
|
|
|
751
|
-
const test$
|
|
751
|
+
const test$a = test$e.extend({
|
|
752
752
|
AdminPage: async ({ IdProvider, AdminApiContext, SalesChannelBaseConfig, browser }, use) => {
|
|
753
753
|
const context = await browser.newContext({
|
|
754
754
|
baseURL: SalesChannelBaseConfig.adminUrl,
|
|
@@ -796,6 +796,21 @@ const test$9 = test$d.extend({
|
|
|
796
796
|
}
|
|
797
797
|
await page.getByRole("button", { name: "Log in" }).click();
|
|
798
798
|
await Promise.all(jsLoadingPromises);
|
|
799
|
+
const originalReload = page.reload.bind(page);
|
|
800
|
+
page.reload = async () => {
|
|
801
|
+
const res = await originalReload();
|
|
802
|
+
await page.addStyleTag({
|
|
803
|
+
content: `
|
|
804
|
+
.sf-toolbar {
|
|
805
|
+
width: 0 !important;
|
|
806
|
+
height: 0 !important;
|
|
807
|
+
display: none !important;
|
|
808
|
+
pointer-events: none !important;
|
|
809
|
+
}
|
|
810
|
+
`.trim()
|
|
811
|
+
});
|
|
812
|
+
return res;
|
|
813
|
+
};
|
|
799
814
|
await use(page);
|
|
800
815
|
await page.close();
|
|
801
816
|
await context.close();
|
|
@@ -809,7 +824,7 @@ const test$9 = test$d.extend({
|
|
|
809
824
|
const page = await context.newPage();
|
|
810
825
|
const isSaasInstance = await isSaaSInstance(AdminApiContext);
|
|
811
826
|
if (!await isThemeCompiled(AdminApiContext, DefaultSalesChannel.url)) {
|
|
812
|
-
test$
|
|
827
|
+
test$e.slow();
|
|
813
828
|
await AdminApiContext.post(
|
|
814
829
|
`./_action/theme/${SalesChannelBaseConfig.defaultThemeId}/assign/${salesChannel.id}`
|
|
815
830
|
);
|
|
@@ -826,27 +841,27 @@ const test$9 = test$d.extend({
|
|
|
826
841
|
}
|
|
827
842
|
});
|
|
828
843
|
|
|
829
|
-
var __defProp$
|
|
830
|
-
var __defNormalProp$
|
|
831
|
-
var __publicField$
|
|
832
|
-
__defNormalProp$
|
|
844
|
+
var __defProp$r = Object.defineProperty;
|
|
845
|
+
var __defNormalProp$r = (obj, key, value) => key in obj ? __defProp$r(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
846
|
+
var __publicField$r = (obj, key, value) => {
|
|
847
|
+
__defNormalProp$r(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
833
848
|
return value;
|
|
834
849
|
};
|
|
835
850
|
class Actor {
|
|
836
851
|
constructor(name, page) {
|
|
837
|
-
__publicField$
|
|
838
|
-
__publicField$
|
|
839
|
-
__publicField$
|
|
852
|
+
__publicField$r(this, "page");
|
|
853
|
+
__publicField$r(this, "name");
|
|
854
|
+
__publicField$r(this, "expects", expect);
|
|
840
855
|
this.name = name;
|
|
841
856
|
this.page = page;
|
|
842
857
|
}
|
|
843
858
|
async attemptsTo(task) {
|
|
844
859
|
const stepTitle = `${this.name} attempts to ${this.camelCaseToLowerCase(task.name)}`;
|
|
845
|
-
await test$
|
|
860
|
+
await test$e.step(stepTitle, async () => await task());
|
|
846
861
|
}
|
|
847
862
|
async goesTo(url) {
|
|
848
863
|
const stepTitle = `${this.name} navigates to "${url}"`;
|
|
849
|
-
await test$
|
|
864
|
+
await test$e.step(stepTitle, async () => {
|
|
850
865
|
await this.page.goto(url);
|
|
851
866
|
await this.page.addStyleTag({
|
|
852
867
|
content: `
|
|
@@ -865,7 +880,7 @@ class Actor {
|
|
|
865
880
|
}
|
|
866
881
|
}
|
|
867
882
|
|
|
868
|
-
const test$
|
|
883
|
+
const test$9 = test$e.extend({
|
|
869
884
|
ShopCustomer: async ({ StorefrontPage }, use) => {
|
|
870
885
|
const shopCustomer = new Actor("Shop customer", StorefrontPage);
|
|
871
886
|
await use(shopCustomer);
|
|
@@ -885,31 +900,31 @@ function createRandomImage(width = 800, height = 600) {
|
|
|
885
900
|
return new Image(width, height, buffer);
|
|
886
901
|
}
|
|
887
902
|
|
|
888
|
-
var __defProp$
|
|
889
|
-
var __defNormalProp$
|
|
890
|
-
var __publicField$
|
|
891
|
-
__defNormalProp$
|
|
903
|
+
var __defProp$q = Object.defineProperty;
|
|
904
|
+
var __defNormalProp$q = (obj, key, value) => key in obj ? __defProp$q(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
905
|
+
var __publicField$q = (obj, key, value) => {
|
|
906
|
+
__defNormalProp$q(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
892
907
|
return value;
|
|
893
908
|
};
|
|
894
909
|
class TestDataService {
|
|
895
910
|
constructor(AdminApiClient, IdProvider, options) {
|
|
896
|
-
__publicField$
|
|
897
|
-
__publicField$
|
|
898
|
-
__publicField$
|
|
899
|
-
__publicField$
|
|
900
|
-
__publicField$
|
|
901
|
-
__publicField$
|
|
902
|
-
__publicField$
|
|
903
|
-
__publicField$
|
|
904
|
-
__publicField$
|
|
905
|
-
__publicField$
|
|
906
|
-
__publicField$
|
|
911
|
+
__publicField$q(this, "AdminApiClient");
|
|
912
|
+
__publicField$q(this, "IdProvider");
|
|
913
|
+
__publicField$q(this, "namePrefix", "Test-");
|
|
914
|
+
__publicField$q(this, "nameSuffix", "");
|
|
915
|
+
__publicField$q(this, "defaultSalesChannel");
|
|
916
|
+
__publicField$q(this, "defaultTaxId");
|
|
917
|
+
__publicField$q(this, "defaultCurrencyId");
|
|
918
|
+
__publicField$q(this, "defaultCategoryId");
|
|
919
|
+
__publicField$q(this, "defaultLanguageId");
|
|
920
|
+
__publicField$q(this, "defaultCountryId");
|
|
921
|
+
__publicField$q(this, "defaultCustomerGroupId");
|
|
907
922
|
/**
|
|
908
923
|
* Configures if an automated cleanup of the data should be executed.
|
|
909
924
|
*
|
|
910
925
|
* @private
|
|
911
926
|
*/
|
|
912
|
-
__publicField$
|
|
927
|
+
__publicField$q(this, "shouldCleanUp", true);
|
|
913
928
|
/**
|
|
914
929
|
* Configuration of higher priority entities for the cleanup operation.
|
|
915
930
|
* These entities will be deleted before others.
|
|
@@ -917,13 +932,13 @@ class TestDataService {
|
|
|
917
932
|
*
|
|
918
933
|
* @private
|
|
919
934
|
*/
|
|
920
|
-
__publicField$
|
|
935
|
+
__publicField$q(this, "highPriorityEntities", ["order", "product"]);
|
|
921
936
|
/**
|
|
922
937
|
* A registry of all created records.
|
|
923
938
|
*
|
|
924
939
|
* @private
|
|
925
940
|
*/
|
|
926
|
-
__publicField$
|
|
941
|
+
__publicField$q(this, "createdRecords", []);
|
|
927
942
|
this.AdminApiClient = AdminApiClient;
|
|
928
943
|
this.IdProvider = IdProvider;
|
|
929
944
|
this.defaultSalesChannel = options.defaultSalesChannel;
|
|
@@ -2023,7 +2038,7 @@ class TestDataService {
|
|
|
2023
2038
|
}
|
|
2024
2039
|
}
|
|
2025
2040
|
|
|
2026
|
-
const test$
|
|
2041
|
+
const test$8 = test$e.extend({
|
|
2027
2042
|
TestDataService: async ({ AdminApiContext, IdProvider, DefaultSalesChannel, SalesChannelBaseConfig }, use) => {
|
|
2028
2043
|
const DataService = new TestDataService(AdminApiContext, IdProvider, {
|
|
2029
2044
|
defaultSalesChannel: DefaultSalesChannel.salesChannel,
|
|
@@ -2039,16 +2054,16 @@ const test$7 = test$d.extend({
|
|
|
2039
2054
|
}
|
|
2040
2055
|
});
|
|
2041
2056
|
|
|
2042
|
-
var __defProp$
|
|
2043
|
-
var __defNormalProp$
|
|
2044
|
-
var __publicField$
|
|
2045
|
-
__defNormalProp$
|
|
2057
|
+
var __defProp$p = Object.defineProperty;
|
|
2058
|
+
var __defNormalProp$p = (obj, key, value) => key in obj ? __defProp$p(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2059
|
+
var __publicField$p = (obj, key, value) => {
|
|
2060
|
+
__defNormalProp$p(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2046
2061
|
return value;
|
|
2047
2062
|
};
|
|
2048
2063
|
class IdProvider {
|
|
2049
2064
|
constructor(workerIndex, seed) {
|
|
2050
|
-
__publicField$
|
|
2051
|
-
__publicField$
|
|
2065
|
+
__publicField$p(this, "workerIndex");
|
|
2066
|
+
__publicField$p(this, "seed");
|
|
2052
2067
|
this.workerIndex = workerIndex;
|
|
2053
2068
|
this.seed = seed;
|
|
2054
2069
|
}
|
|
@@ -2077,7 +2092,7 @@ class IdProvider {
|
|
|
2077
2092
|
}
|
|
2078
2093
|
}
|
|
2079
2094
|
|
|
2080
|
-
const test$
|
|
2095
|
+
const test$7 = test$e.extend({
|
|
2081
2096
|
IdProvider: [
|
|
2082
2097
|
async ({}, use, workerInfo) => {
|
|
2083
2098
|
const seed = process.env.SHOPWARE_ACCESS_KEY_ID || process.env.SHOPWARE_ADMIN_PASSWORD || "test-suite";
|
|
@@ -2089,7 +2104,7 @@ const test$6 = test$d.extend({
|
|
|
2089
2104
|
SaaSInstanceSetup: [
|
|
2090
2105
|
async ({ AdminApiContext: context }, use) => {
|
|
2091
2106
|
const SetupInstance = async function SetupInstance2() {
|
|
2092
|
-
await test$
|
|
2107
|
+
await test$7.skip(!await isSaaSInstance(context), "Skipping SaaS setup, could not detect SaaS instance");
|
|
2093
2108
|
expect(context.options.admin_username, "setup requires admin user credentials").toEqual(expect.any(String));
|
|
2094
2109
|
expect(context.options.admin_password, "setup requires admin user credentials").toEqual(expect.any(String));
|
|
2095
2110
|
const instanceStatusResponse = await context.get("./instance/status");
|
|
@@ -2110,16 +2125,16 @@ const test$6 = test$d.extend({
|
|
|
2110
2125
|
]
|
|
2111
2126
|
});
|
|
2112
2127
|
|
|
2113
|
-
var __defProp$
|
|
2114
|
-
var __defNormalProp$
|
|
2115
|
-
var __publicField$
|
|
2116
|
-
__defNormalProp$
|
|
2128
|
+
var __defProp$o = Object.defineProperty;
|
|
2129
|
+
var __defNormalProp$o = (obj, key, value) => key in obj ? __defProp$o(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2130
|
+
var __publicField$o = (obj, key, value) => {
|
|
2131
|
+
__defNormalProp$o(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2117
2132
|
return value;
|
|
2118
2133
|
};
|
|
2119
2134
|
class Home {
|
|
2120
2135
|
constructor(page) {
|
|
2121
2136
|
this.page = page;
|
|
2122
|
-
__publicField$
|
|
2137
|
+
__publicField$o(this, "productImages");
|
|
2123
2138
|
this.productImages = page.locator(".product-image-link");
|
|
2124
2139
|
}
|
|
2125
2140
|
url() {
|
|
@@ -2127,27 +2142,29 @@ class Home {
|
|
|
2127
2142
|
}
|
|
2128
2143
|
}
|
|
2129
2144
|
|
|
2130
|
-
var __defProp$
|
|
2131
|
-
var __defNormalProp$
|
|
2132
|
-
var __publicField$
|
|
2133
|
-
__defNormalProp$
|
|
2145
|
+
var __defProp$n = Object.defineProperty;
|
|
2146
|
+
var __defNormalProp$n = (obj, key, value) => key in obj ? __defProp$n(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2147
|
+
var __publicField$n = (obj, key, value) => {
|
|
2148
|
+
__defNormalProp$n(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2134
2149
|
return value;
|
|
2135
2150
|
};
|
|
2136
2151
|
let ProductDetail$1 = class ProductDetail {
|
|
2137
2152
|
constructor(page) {
|
|
2138
2153
|
this.page = page;
|
|
2139
|
-
__publicField$
|
|
2140
|
-
__publicField$
|
|
2141
|
-
__publicField$
|
|
2142
|
-
__publicField$
|
|
2143
|
-
__publicField$
|
|
2144
|
-
__publicField$
|
|
2145
|
-
__publicField$
|
|
2146
|
-
__publicField$
|
|
2147
|
-
__publicField$
|
|
2154
|
+
__publicField$n(this, "addToCartButton");
|
|
2155
|
+
__publicField$n(this, "quantitySelect");
|
|
2156
|
+
__publicField$n(this, "productSingleImage");
|
|
2157
|
+
__publicField$n(this, "productSinglePrice");
|
|
2158
|
+
__publicField$n(this, "offCanvasCartTitle");
|
|
2159
|
+
__publicField$n(this, "offCanvasCart");
|
|
2160
|
+
__publicField$n(this, "offCanvasCartGoToCheckoutButton");
|
|
2161
|
+
__publicField$n(this, "offCanvasLineItemImages");
|
|
2162
|
+
__publicField$n(this, "offCanvasSummaryTotalPrice");
|
|
2163
|
+
__publicField$n(this, "offCanvas");
|
|
2148
2164
|
this.addToCartButton = page.getByRole("button", { name: "Add to shopping cart" });
|
|
2149
2165
|
this.quantitySelect = page.getByLabel("Quantity", { exact: true });
|
|
2150
2166
|
this.productSingleImage = page.locator(".gallery-slider-single-image");
|
|
2167
|
+
this.productSinglePrice = page.locator(".product-detail-price");
|
|
2151
2168
|
this.offCanvas = page.locator("offcanvas-body");
|
|
2152
2169
|
this.offCanvasCartTitle = page.getByText("Shopping cart", { exact: true });
|
|
2153
2170
|
this.offCanvasCart = page.getByRole("dialog");
|
|
@@ -2164,18 +2181,18 @@ let ProductDetail$1 = class ProductDetail {
|
|
|
2164
2181
|
}
|
|
2165
2182
|
};
|
|
2166
2183
|
|
|
2167
|
-
var __defProp$
|
|
2168
|
-
var __defNormalProp$
|
|
2169
|
-
var __publicField$
|
|
2170
|
-
__defNormalProp$
|
|
2184
|
+
var __defProp$m = Object.defineProperty;
|
|
2185
|
+
var __defNormalProp$m = (obj, key, value) => key in obj ? __defProp$m(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2186
|
+
var __publicField$m = (obj, key, value) => {
|
|
2187
|
+
__defNormalProp$m(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2171
2188
|
return value;
|
|
2172
2189
|
};
|
|
2173
2190
|
class Category {
|
|
2174
2191
|
constructor(page) {
|
|
2175
2192
|
this.page = page;
|
|
2176
|
-
__publicField$
|
|
2177
|
-
__publicField$
|
|
2178
|
-
__publicField$
|
|
2193
|
+
__publicField$m(this, "sortingSelect");
|
|
2194
|
+
__publicField$m(this, "firstProductBuyButton");
|
|
2195
|
+
__publicField$m(this, "noProductsFoundAlert");
|
|
2179
2196
|
this.sortingSelect = page.getByLabel("Sorting");
|
|
2180
2197
|
this.firstProductBuyButton = page.getByRole("button", { name: "Add to shopping cart" }).first();
|
|
2181
2198
|
this.noProductsFoundAlert = page.getByText("No products found.");
|
|
@@ -2185,23 +2202,23 @@ class Category {
|
|
|
2185
2202
|
}
|
|
2186
2203
|
}
|
|
2187
2204
|
|
|
2188
|
-
var __defProp$
|
|
2189
|
-
var __defNormalProp$
|
|
2190
|
-
var __publicField$
|
|
2191
|
-
__defNormalProp$
|
|
2205
|
+
var __defProp$l = Object.defineProperty;
|
|
2206
|
+
var __defNormalProp$l = (obj, key, value) => key in obj ? __defProp$l(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2207
|
+
var __publicField$l = (obj, key, value) => {
|
|
2208
|
+
__defNormalProp$l(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2192
2209
|
return value;
|
|
2193
2210
|
};
|
|
2194
2211
|
class CheckoutCart {
|
|
2195
2212
|
constructor(page) {
|
|
2196
2213
|
this.page = page;
|
|
2197
|
-
__publicField$
|
|
2198
|
-
__publicField$
|
|
2199
|
-
__publicField$
|
|
2200
|
-
__publicField$
|
|
2201
|
-
__publicField$
|
|
2202
|
-
__publicField$
|
|
2203
|
-
__publicField$
|
|
2204
|
-
__publicField$
|
|
2214
|
+
__publicField$l(this, "headline");
|
|
2215
|
+
__publicField$l(this, "goToCheckoutButton");
|
|
2216
|
+
__publicField$l(this, "enterDiscountInput");
|
|
2217
|
+
__publicField$l(this, "grandTotalPrice");
|
|
2218
|
+
__publicField$l(this, "emptyCartAlert");
|
|
2219
|
+
__publicField$l(this, "stockReachedAlert");
|
|
2220
|
+
__publicField$l(this, "cartLineItemImages");
|
|
2221
|
+
__publicField$l(this, "unitPriceInfo");
|
|
2205
2222
|
this.headline = page.getByRole("heading", { name: "Shopping cart" });
|
|
2206
2223
|
this.goToCheckoutButton = page.getByRole("link", { name: "Go to checkout" });
|
|
2207
2224
|
this.enterDiscountInput = page.getByLabel("Discount code");
|
|
@@ -2216,35 +2233,35 @@ class CheckoutCart {
|
|
|
2216
2233
|
}
|
|
2217
2234
|
}
|
|
2218
2235
|
|
|
2219
|
-
var __defProp$
|
|
2220
|
-
var __defNormalProp$
|
|
2221
|
-
var __publicField$
|
|
2222
|
-
__defNormalProp$
|
|
2236
|
+
var __defProp$k = Object.defineProperty;
|
|
2237
|
+
var __defNormalProp$k = (obj, key, value) => key in obj ? __defProp$k(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2238
|
+
var __publicField$k = (obj, key, value) => {
|
|
2239
|
+
__defNormalProp$k(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2223
2240
|
return value;
|
|
2224
2241
|
};
|
|
2225
2242
|
class CheckoutConfirm {
|
|
2226
2243
|
constructor(page) {
|
|
2227
2244
|
this.page = page;
|
|
2228
|
-
__publicField$
|
|
2229
|
-
__publicField$
|
|
2230
|
-
__publicField$
|
|
2231
|
-
__publicField$
|
|
2232
|
-
__publicField$
|
|
2245
|
+
__publicField$k(this, "headline");
|
|
2246
|
+
__publicField$k(this, "termsAndConditionsCheckbox");
|
|
2247
|
+
__publicField$k(this, "immediateAccessToDigitalProductCheckbox");
|
|
2248
|
+
__publicField$k(this, "grandTotalPrice");
|
|
2249
|
+
__publicField$k(this, "submitOrderButton");
|
|
2233
2250
|
/**
|
|
2234
2251
|
* Payment options
|
|
2235
2252
|
*/
|
|
2236
|
-
__publicField$
|
|
2237
|
-
__publicField$
|
|
2238
|
-
__publicField$
|
|
2253
|
+
__publicField$k(this, "paymentCashOnDelivery");
|
|
2254
|
+
__publicField$k(this, "paymentPaidInAdvance");
|
|
2255
|
+
__publicField$k(this, "paymentInvoice");
|
|
2239
2256
|
/**
|
|
2240
2257
|
* Shipping options
|
|
2241
2258
|
*/
|
|
2242
|
-
__publicField$
|
|
2243
|
-
__publicField$
|
|
2259
|
+
__publicField$k(this, "shippingStandard");
|
|
2260
|
+
__publicField$k(this, "shippingExpress");
|
|
2244
2261
|
/**
|
|
2245
2262
|
* Product details
|
|
2246
2263
|
*/
|
|
2247
|
-
__publicField$
|
|
2264
|
+
__publicField$k(this, "cartLineItemImages");
|
|
2248
2265
|
this.headline = page.getByRole("heading", { name: "Complete order" });
|
|
2249
2266
|
this.termsAndConditionsCheckbox = page.getByLabel("I have read and accepted the general terms and conditions.");
|
|
2250
2267
|
this.immediateAccessToDigitalProductCheckbox = page.getByLabel("I want immediate access to the digital content and I acknowledge that thereby I waive my right to cancel.");
|
|
@@ -2262,20 +2279,20 @@ class CheckoutConfirm {
|
|
|
2262
2279
|
}
|
|
2263
2280
|
}
|
|
2264
2281
|
|
|
2265
|
-
var __defProp$
|
|
2266
|
-
var __defNormalProp$
|
|
2267
|
-
var __publicField$
|
|
2268
|
-
__defNormalProp$
|
|
2282
|
+
var __defProp$j = Object.defineProperty;
|
|
2283
|
+
var __defNormalProp$j = (obj, key, value) => key in obj ? __defProp$j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2284
|
+
var __publicField$j = (obj, key, value) => {
|
|
2285
|
+
__defNormalProp$j(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2269
2286
|
return value;
|
|
2270
2287
|
};
|
|
2271
2288
|
class CheckoutFinish {
|
|
2272
2289
|
constructor(page) {
|
|
2273
2290
|
this.page = page;
|
|
2274
|
-
__publicField$
|
|
2275
|
-
__publicField$
|
|
2276
|
-
__publicField$
|
|
2277
|
-
__publicField$
|
|
2278
|
-
__publicField$
|
|
2291
|
+
__publicField$j(this, "headline");
|
|
2292
|
+
__publicField$j(this, "orderNumberText");
|
|
2293
|
+
__publicField$j(this, "grandTotalPrice");
|
|
2294
|
+
__publicField$j(this, "cartLineItemImages");
|
|
2295
|
+
__publicField$j(this, "orderNumberRegex", /Your order number: #(\d+)/);
|
|
2279
2296
|
this.headline = page.getByRole("heading", { name: "Thank you for your order" });
|
|
2280
2297
|
this.orderNumberText = page.getByText(this.orderNumberRegex);
|
|
2281
2298
|
this.grandTotalPrice = page.locator('dt:has-text("Grand total") + dd');
|
|
@@ -2303,16 +2320,16 @@ class CheckoutFinish {
|
|
|
2303
2320
|
}
|
|
2304
2321
|
}
|
|
2305
2322
|
|
|
2306
|
-
var __defProp$
|
|
2307
|
-
var __defNormalProp$
|
|
2308
|
-
var __publicField$
|
|
2309
|
-
__defNormalProp$
|
|
2323
|
+
var __defProp$i = Object.defineProperty;
|
|
2324
|
+
var __defNormalProp$i = (obj, key, value) => key in obj ? __defProp$i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2325
|
+
var __publicField$i = (obj, key, value) => {
|
|
2326
|
+
__defNormalProp$i(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2310
2327
|
return value;
|
|
2311
2328
|
};
|
|
2312
2329
|
class CheckoutRegister {
|
|
2313
2330
|
constructor(page) {
|
|
2314
2331
|
this.page = page;
|
|
2315
|
-
__publicField$
|
|
2332
|
+
__publicField$i(this, "cartLineItemImages");
|
|
2316
2333
|
this.cartLineItemImages = page.locator(".line-item-img-link");
|
|
2317
2334
|
}
|
|
2318
2335
|
url() {
|
|
@@ -2320,22 +2337,22 @@ class CheckoutRegister {
|
|
|
2320
2337
|
}
|
|
2321
2338
|
}
|
|
2322
2339
|
|
|
2323
|
-
var __defProp$
|
|
2324
|
-
var __defNormalProp$
|
|
2325
|
-
var __publicField$
|
|
2326
|
-
__defNormalProp$
|
|
2340
|
+
var __defProp$h = Object.defineProperty;
|
|
2341
|
+
var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2342
|
+
var __publicField$h = (obj, key, value) => {
|
|
2343
|
+
__defNormalProp$h(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2327
2344
|
return value;
|
|
2328
2345
|
};
|
|
2329
2346
|
class Account {
|
|
2330
2347
|
constructor(page) {
|
|
2331
2348
|
this.page = page;
|
|
2332
|
-
__publicField$
|
|
2333
|
-
__publicField$
|
|
2334
|
-
__publicField$
|
|
2335
|
-
__publicField$
|
|
2336
|
-
__publicField$
|
|
2337
|
-
__publicField$
|
|
2338
|
-
__publicField$
|
|
2349
|
+
__publicField$h(this, "headline");
|
|
2350
|
+
__publicField$h(this, "personalDataCardTitle");
|
|
2351
|
+
__publicField$h(this, "paymentMethodCardTitle");
|
|
2352
|
+
__publicField$h(this, "billingAddressCardTitle");
|
|
2353
|
+
__publicField$h(this, "shippingAddressCardTitle");
|
|
2354
|
+
__publicField$h(this, "newsletterCheckbox");
|
|
2355
|
+
__publicField$h(this, "newsletterRegistrationSuccessMessage");
|
|
2339
2356
|
this.headline = page.getByRole("heading", { name: "Overview" });
|
|
2340
2357
|
this.personalDataCardTitle = page.getByRole("heading", { name: "Personal data" });
|
|
2341
2358
|
this.paymentMethodCardTitle = page.getByRole("heading", { name: "Default payment method" });
|
|
@@ -2349,31 +2366,31 @@ class Account {
|
|
|
2349
2366
|
}
|
|
2350
2367
|
}
|
|
2351
2368
|
|
|
2352
|
-
var __defProp$
|
|
2353
|
-
var __defNormalProp$
|
|
2354
|
-
var __publicField$
|
|
2355
|
-
__defNormalProp$
|
|
2369
|
+
var __defProp$g = Object.defineProperty;
|
|
2370
|
+
var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2371
|
+
var __publicField$g = (obj, key, value) => {
|
|
2372
|
+
__defNormalProp$g(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2356
2373
|
return value;
|
|
2357
2374
|
};
|
|
2358
2375
|
class AccountLogin {
|
|
2359
2376
|
constructor(page) {
|
|
2360
2377
|
this.page = page;
|
|
2361
|
-
__publicField$
|
|
2362
|
-
__publicField$
|
|
2363
|
-
__publicField$
|
|
2364
|
-
__publicField$
|
|
2365
|
-
__publicField$
|
|
2378
|
+
__publicField$g(this, "emailInput");
|
|
2379
|
+
__publicField$g(this, "passwordInput");
|
|
2380
|
+
__publicField$g(this, "loginButton");
|
|
2381
|
+
__publicField$g(this, "logoutLink");
|
|
2382
|
+
__publicField$g(this, "successAlert");
|
|
2366
2383
|
// Inputs for registration
|
|
2367
|
-
__publicField$
|
|
2368
|
-
__publicField$
|
|
2369
|
-
__publicField$
|
|
2370
|
-
__publicField$
|
|
2371
|
-
__publicField$
|
|
2372
|
-
__publicField$
|
|
2373
|
-
__publicField$
|
|
2374
|
-
__publicField$
|
|
2375
|
-
__publicField$
|
|
2376
|
-
__publicField$
|
|
2384
|
+
__publicField$g(this, "personalFormArea");
|
|
2385
|
+
__publicField$g(this, "billingAddressFormArea");
|
|
2386
|
+
__publicField$g(this, "firstNameInput");
|
|
2387
|
+
__publicField$g(this, "lastNameInput");
|
|
2388
|
+
__publicField$g(this, "registerEmailInput");
|
|
2389
|
+
__publicField$g(this, "registerPasswordInput");
|
|
2390
|
+
__publicField$g(this, "streetAddressInput");
|
|
2391
|
+
__publicField$g(this, "cityInput");
|
|
2392
|
+
__publicField$g(this, "countryInput");
|
|
2393
|
+
__publicField$g(this, "registerButton");
|
|
2377
2394
|
this.emailInput = page.getByLabel("Your email address");
|
|
2378
2395
|
this.passwordInput = page.getByLabel("Your password");
|
|
2379
2396
|
this.loginButton = page.getByRole("button", { name: "Log in" });
|
|
@@ -2396,29 +2413,29 @@ class AccountLogin {
|
|
|
2396
2413
|
}
|
|
2397
2414
|
}
|
|
2398
2415
|
|
|
2399
|
-
var __defProp$
|
|
2400
|
-
var __defNormalProp$
|
|
2401
|
-
var __publicField$
|
|
2402
|
-
__defNormalProp$
|
|
2416
|
+
var __defProp$f = Object.defineProperty;
|
|
2417
|
+
var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2418
|
+
var __publicField$f = (obj, key, value) => {
|
|
2419
|
+
__defNormalProp$f(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2403
2420
|
return value;
|
|
2404
2421
|
};
|
|
2405
2422
|
class AccountProfile {
|
|
2406
2423
|
constructor(page) {
|
|
2407
2424
|
this.page = page;
|
|
2408
|
-
__publicField$
|
|
2409
|
-
__publicField$
|
|
2410
|
-
__publicField$
|
|
2411
|
-
__publicField$
|
|
2412
|
-
__publicField$
|
|
2413
|
-
__publicField$
|
|
2414
|
-
__publicField$
|
|
2415
|
-
__publicField$
|
|
2416
|
-
__publicField$
|
|
2417
|
-
__publicField$
|
|
2418
|
-
__publicField$
|
|
2419
|
-
__publicField$
|
|
2420
|
-
__publicField$
|
|
2421
|
-
__publicField$
|
|
2425
|
+
__publicField$f(this, "salutationSelect");
|
|
2426
|
+
__publicField$f(this, "firstNameInput");
|
|
2427
|
+
__publicField$f(this, "lastNameInput");
|
|
2428
|
+
__publicField$f(this, "saveProfileButton");
|
|
2429
|
+
__publicField$f(this, "changeEmailButton");
|
|
2430
|
+
__publicField$f(this, "emailAddressInput");
|
|
2431
|
+
__publicField$f(this, "emailAddressConfirmInput");
|
|
2432
|
+
__publicField$f(this, "emailConfirmPasswordInput");
|
|
2433
|
+
__publicField$f(this, "saveEmailAddressButton");
|
|
2434
|
+
__publicField$f(this, "changePasswordButton");
|
|
2435
|
+
__publicField$f(this, "newPasswordInput");
|
|
2436
|
+
__publicField$f(this, "newPasswordConfirmInput");
|
|
2437
|
+
__publicField$f(this, "currentPasswordInput");
|
|
2438
|
+
__publicField$f(this, "saveNewPasswordButton");
|
|
2422
2439
|
this.salutationSelect = page.getByLabel("Salutation");
|
|
2423
2440
|
this.firstNameInput = page.getByPlaceholder("Enter first name...");
|
|
2424
2441
|
this.lastNameInput = page.getByPlaceholder("Enter last name...");
|
|
@@ -2439,18 +2456,18 @@ class AccountProfile {
|
|
|
2439
2456
|
}
|
|
2440
2457
|
}
|
|
2441
2458
|
|
|
2442
|
-
var __defProp$
|
|
2443
|
-
var __defNormalProp$
|
|
2444
|
-
var __publicField$
|
|
2445
|
-
__defNormalProp$
|
|
2459
|
+
var __defProp$e = Object.defineProperty;
|
|
2460
|
+
var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2461
|
+
var __publicField$e = (obj, key, value) => {
|
|
2462
|
+
__defNormalProp$e(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2446
2463
|
return value;
|
|
2447
2464
|
};
|
|
2448
2465
|
class AccountOrder {
|
|
2449
2466
|
constructor(page) {
|
|
2450
2467
|
this.page = page;
|
|
2451
|
-
__publicField$
|
|
2452
|
-
__publicField$
|
|
2453
|
-
__publicField$
|
|
2468
|
+
__publicField$e(this, "cartLineItemImages");
|
|
2469
|
+
__publicField$e(this, "orderExpandButton");
|
|
2470
|
+
__publicField$e(this, "digitalProductDownloadButton");
|
|
2454
2471
|
this.orderExpandButton = page.getByRole("button", { name: "Expand" }).first();
|
|
2455
2472
|
this.cartLineItemImages = page.locator(".line-item-img-link");
|
|
2456
2473
|
this.digitalProductDownloadButton = page.getByRole("link", { name: "Download" }).first();
|
|
@@ -2460,20 +2477,20 @@ class AccountOrder {
|
|
|
2460
2477
|
}
|
|
2461
2478
|
}
|
|
2462
2479
|
|
|
2463
|
-
var __defProp$
|
|
2464
|
-
var __defNormalProp$
|
|
2465
|
-
var __publicField$
|
|
2466
|
-
__defNormalProp$
|
|
2480
|
+
var __defProp$d = Object.defineProperty;
|
|
2481
|
+
var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2482
|
+
var __publicField$d = (obj, key, value) => {
|
|
2483
|
+
__defNormalProp$d(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2467
2484
|
return value;
|
|
2468
2485
|
};
|
|
2469
2486
|
class AccountAddresses {
|
|
2470
2487
|
constructor(page) {
|
|
2471
2488
|
this.page = page;
|
|
2472
|
-
__publicField$
|
|
2473
|
-
__publicField$
|
|
2474
|
-
__publicField$
|
|
2475
|
-
__publicField$
|
|
2476
|
-
__publicField$
|
|
2489
|
+
__publicField$d(this, "addNewAddressButton");
|
|
2490
|
+
__publicField$d(this, "editBillingAddressButton");
|
|
2491
|
+
__publicField$d(this, "editShippingAddressButton");
|
|
2492
|
+
__publicField$d(this, "useDefaultBillingAddressButton");
|
|
2493
|
+
__publicField$d(this, "useDefaultShippingAddressButton");
|
|
2477
2494
|
this.addNewAddressButton = page.getByRole("link", { name: "Add new address" });
|
|
2478
2495
|
this.editBillingAddressButton = page.getByRole("link", { name: "Edit address" }).first();
|
|
2479
2496
|
this.editShippingAddressButton = page.getByRole("link", { name: "Edit address" }).nth(1);
|
|
@@ -2485,19 +2502,19 @@ class AccountAddresses {
|
|
|
2485
2502
|
}
|
|
2486
2503
|
}
|
|
2487
2504
|
|
|
2488
|
-
var __defProp$
|
|
2489
|
-
var __defNormalProp$
|
|
2490
|
-
var __publicField$
|
|
2491
|
-
__defNormalProp$
|
|
2505
|
+
var __defProp$c = Object.defineProperty;
|
|
2506
|
+
var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2507
|
+
var __publicField$c = (obj, key, value) => {
|
|
2508
|
+
__defNormalProp$c(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2492
2509
|
return value;
|
|
2493
2510
|
};
|
|
2494
2511
|
class AccountPayment {
|
|
2495
2512
|
constructor(page) {
|
|
2496
2513
|
this.page = page;
|
|
2497
|
-
__publicField$
|
|
2498
|
-
__publicField$
|
|
2499
|
-
__publicField$
|
|
2500
|
-
__publicField$
|
|
2514
|
+
__publicField$c(this, "cashOnDeliveryOption");
|
|
2515
|
+
__publicField$c(this, "paidInAdvanceOption");
|
|
2516
|
+
__publicField$c(this, "invoiceOption");
|
|
2517
|
+
__publicField$c(this, "changeDefaultPaymentButton");
|
|
2501
2518
|
this.cashOnDeliveryOption = page.getByLabel("Cash on delivery");
|
|
2502
2519
|
this.paidInAdvanceOption = page.getByLabel("Paid in advance");
|
|
2503
2520
|
this.invoiceOption = page.getByLabel("Invoice");
|
|
@@ -2508,17 +2525,17 @@ class AccountPayment {
|
|
|
2508
2525
|
}
|
|
2509
2526
|
}
|
|
2510
2527
|
|
|
2511
|
-
var __defProp$
|
|
2512
|
-
var __defNormalProp$
|
|
2513
|
-
var __publicField$
|
|
2514
|
-
__defNormalProp$
|
|
2528
|
+
var __defProp$b = Object.defineProperty;
|
|
2529
|
+
var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2530
|
+
var __publicField$b = (obj, key, value) => {
|
|
2531
|
+
__defNormalProp$b(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2515
2532
|
return value;
|
|
2516
2533
|
};
|
|
2517
2534
|
class Search {
|
|
2518
2535
|
constructor(page) {
|
|
2519
2536
|
this.page = page;
|
|
2520
|
-
__publicField$
|
|
2521
|
-
__publicField$
|
|
2537
|
+
__publicField$b(this, "headline");
|
|
2538
|
+
__publicField$b(this, "productImages");
|
|
2522
2539
|
this.headline = page.locator("h1.search-headline");
|
|
2523
2540
|
this.productImages = page.locator(".product-image-link");
|
|
2524
2541
|
}
|
|
@@ -2527,16 +2544,16 @@ class Search {
|
|
|
2527
2544
|
}
|
|
2528
2545
|
}
|
|
2529
2546
|
|
|
2530
|
-
var __defProp$
|
|
2531
|
-
var __defNormalProp$
|
|
2532
|
-
var __publicField$
|
|
2533
|
-
__defNormalProp$
|
|
2547
|
+
var __defProp$a = Object.defineProperty;
|
|
2548
|
+
var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2549
|
+
var __publicField$a = (obj, key, value) => {
|
|
2550
|
+
__defNormalProp$a(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2534
2551
|
return value;
|
|
2535
2552
|
};
|
|
2536
2553
|
class SearchSuggest {
|
|
2537
2554
|
constructor(page) {
|
|
2538
2555
|
this.page = page;
|
|
2539
|
-
__publicField$
|
|
2556
|
+
__publicField$a(this, "searchSuggestLineItemImages");
|
|
2540
2557
|
this.searchSuggestLineItemImages = page.locator(".search-suggest-product-image-container");
|
|
2541
2558
|
}
|
|
2542
2559
|
url(searchTerm) {
|
|
@@ -2561,7 +2578,7 @@ const StorefrontPageObjects = {
|
|
|
2561
2578
|
Search,
|
|
2562
2579
|
SearchSuggest
|
|
2563
2580
|
};
|
|
2564
|
-
const test$
|
|
2581
|
+
const test$6 = test$e.extend({
|
|
2565
2582
|
StorefrontHome: async ({ StorefrontPage }, use) => {
|
|
2566
2583
|
await use(new Home(StorefrontPage));
|
|
2567
2584
|
},
|
|
@@ -2609,10 +2626,10 @@ const test$5 = test$d.extend({
|
|
|
2609
2626
|
}
|
|
2610
2627
|
});
|
|
2611
2628
|
|
|
2612
|
-
var __defProp$
|
|
2613
|
-
var __defNormalProp$
|
|
2614
|
-
var __publicField$
|
|
2615
|
-
__defNormalProp$
|
|
2629
|
+
var __defProp$9 = Object.defineProperty;
|
|
2630
|
+
var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2631
|
+
var __publicField$9 = (obj, key, value) => {
|
|
2632
|
+
__defNormalProp$9(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2616
2633
|
return value;
|
|
2617
2634
|
};
|
|
2618
2635
|
class ProductDetail {
|
|
@@ -2621,39 +2638,39 @@ class ProductDetail {
|
|
|
2621
2638
|
/**
|
|
2622
2639
|
* Save interactions
|
|
2623
2640
|
*/
|
|
2624
|
-
__publicField$
|
|
2625
|
-
__publicField$
|
|
2626
|
-
__publicField$
|
|
2641
|
+
__publicField$9(this, "savePhysicalProductButton");
|
|
2642
|
+
__publicField$9(this, "saveButtonLoadingSpinner");
|
|
2643
|
+
__publicField$9(this, "saveButtonCheckMark");
|
|
2627
2644
|
/**
|
|
2628
2645
|
* Media Upload interactions
|
|
2629
2646
|
*/
|
|
2630
|
-
__publicField$
|
|
2631
|
-
__publicField$
|
|
2632
|
-
__publicField$
|
|
2647
|
+
__publicField$9(this, "uploadMediaButton");
|
|
2648
|
+
__publicField$9(this, "coverImage");
|
|
2649
|
+
__publicField$9(this, "productImage");
|
|
2633
2650
|
/**
|
|
2634
2651
|
* Tabs
|
|
2635
2652
|
*/
|
|
2636
|
-
__publicField$
|
|
2653
|
+
__publicField$9(this, "variantsTabLink");
|
|
2637
2654
|
/**
|
|
2638
2655
|
* Variants Generation
|
|
2639
2656
|
*/
|
|
2640
|
-
__publicField$
|
|
2641
|
-
__publicField$
|
|
2642
|
-
__publicField$
|
|
2643
|
-
__publicField$
|
|
2644
|
-
__publicField$
|
|
2657
|
+
__publicField$9(this, "generateVariantsButton");
|
|
2658
|
+
__publicField$9(this, "variantsModal");
|
|
2659
|
+
__publicField$9(this, "variantsModalHeadline");
|
|
2660
|
+
__publicField$9(this, "variantsNextButton");
|
|
2661
|
+
__publicField$9(this, "variantsSaveButton");
|
|
2645
2662
|
/**
|
|
2646
2663
|
* Property Selection
|
|
2647
2664
|
*/
|
|
2648
|
-
__publicField$
|
|
2649
|
-
__publicField$
|
|
2650
|
-
__publicField$
|
|
2651
|
-
__publicField$
|
|
2652
|
-
__publicField$
|
|
2653
|
-
__publicField$
|
|
2654
|
-
__publicField$
|
|
2655
|
-
__publicField$
|
|
2656
|
-
__publicField$
|
|
2665
|
+
__publicField$9(this, "propertyGroupColor");
|
|
2666
|
+
__publicField$9(this, "propertyGroupSize");
|
|
2667
|
+
__publicField$9(this, "propertyOptionGrid");
|
|
2668
|
+
__publicField$9(this, "propertyOptionColorBlue");
|
|
2669
|
+
__publicField$9(this, "propertyOptionColorRed");
|
|
2670
|
+
__publicField$9(this, "propertyOptionColorGreen");
|
|
2671
|
+
__publicField$9(this, "propertyOptionSizeSmall");
|
|
2672
|
+
__publicField$9(this, "propertyOptionSizeMedium");
|
|
2673
|
+
__publicField$9(this, "propertyOptionSizeLarge");
|
|
2657
2674
|
this.savePhysicalProductButton = page.getByRole("button", { name: "Save" });
|
|
2658
2675
|
this.saveButtonCheckMark = page.locator(".icon--regular-checkmark-xs");
|
|
2659
2676
|
this.saveButtonLoadingSpinner = page.locator("sw-loader");
|
|
@@ -2681,18 +2698,18 @@ class ProductDetail {
|
|
|
2681
2698
|
}
|
|
2682
2699
|
}
|
|
2683
2700
|
|
|
2684
|
-
var __defProp$
|
|
2685
|
-
var __defNormalProp$
|
|
2686
|
-
var __publicField$
|
|
2687
|
-
__defNormalProp$
|
|
2701
|
+
var __defProp$8 = Object.defineProperty;
|
|
2702
|
+
var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2703
|
+
var __publicField$8 = (obj, key, value) => {
|
|
2704
|
+
__defNormalProp$8(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2688
2705
|
return value;
|
|
2689
2706
|
};
|
|
2690
2707
|
class OrderDetail {
|
|
2691
2708
|
constructor(page) {
|
|
2692
2709
|
this.page = page;
|
|
2693
|
-
__publicField$
|
|
2694
|
-
__publicField$
|
|
2695
|
-
__publicField$
|
|
2710
|
+
__publicField$8(this, "saveButton");
|
|
2711
|
+
__publicField$8(this, "dataGridContextButton");
|
|
2712
|
+
__publicField$8(this, "orderTag");
|
|
2696
2713
|
this.saveButton = page.locator(".sw-order-detail__smart-bar-save-button");
|
|
2697
2714
|
this.dataGridContextButton = page.locator(".sw-data-grid__actions-menu").and(page.getByRole("button"));
|
|
2698
2715
|
this.orderTag = page.locator(".sw-select-selection-list__item");
|
|
@@ -2702,18 +2719,18 @@ class OrderDetail {
|
|
|
2702
2719
|
}
|
|
2703
2720
|
}
|
|
2704
2721
|
|
|
2705
|
-
var __defProp$
|
|
2706
|
-
var __defNormalProp$
|
|
2707
|
-
var __publicField$
|
|
2708
|
-
__defNormalProp$
|
|
2722
|
+
var __defProp$7 = Object.defineProperty;
|
|
2723
|
+
var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2724
|
+
var __publicField$7 = (obj, key, value) => {
|
|
2725
|
+
__defNormalProp$7(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2709
2726
|
return value;
|
|
2710
2727
|
};
|
|
2711
2728
|
class CustomerDetail {
|
|
2712
2729
|
constructor(page) {
|
|
2713
2730
|
this.page = page;
|
|
2714
|
-
__publicField$
|
|
2715
|
-
__publicField$
|
|
2716
|
-
__publicField$
|
|
2731
|
+
__publicField$7(this, "editButton");
|
|
2732
|
+
__publicField$7(this, "generalTab");
|
|
2733
|
+
__publicField$7(this, "accountCard");
|
|
2717
2734
|
this.editButton = page.getByRole("button", { name: "Edit" });
|
|
2718
2735
|
this.generalTab = page.getByRole("link", { name: "General" });
|
|
2719
2736
|
this.accountCard = page.locator(".sw-customer-card");
|
|
@@ -2723,53 +2740,53 @@ class CustomerDetail {
|
|
|
2723
2740
|
}
|
|
2724
2741
|
}
|
|
2725
2742
|
|
|
2726
|
-
var __defProp$
|
|
2727
|
-
var __defNormalProp$
|
|
2728
|
-
var __publicField$
|
|
2729
|
-
__defNormalProp$
|
|
2743
|
+
var __defProp$6 = Object.defineProperty;
|
|
2744
|
+
var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2745
|
+
var __publicField$6 = (obj, key, value) => {
|
|
2746
|
+
__defNormalProp$6(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2730
2747
|
return value;
|
|
2731
2748
|
};
|
|
2732
2749
|
class FirstRunWizard {
|
|
2733
2750
|
constructor(page) {
|
|
2734
2751
|
this.page = page;
|
|
2735
|
-
__publicField$
|
|
2736
|
-
__publicField$
|
|
2737
|
-
__publicField$
|
|
2738
|
-
__publicField$
|
|
2739
|
-
__publicField$
|
|
2740
|
-
__publicField$
|
|
2741
|
-
__publicField$
|
|
2742
|
-
__publicField$
|
|
2743
|
-
__publicField$
|
|
2744
|
-
__publicField$
|
|
2745
|
-
__publicField$
|
|
2746
|
-
__publicField$
|
|
2747
|
-
__publicField$
|
|
2748
|
-
__publicField$
|
|
2749
|
-
__publicField$
|
|
2750
|
-
__publicField$
|
|
2751
|
-
__publicField$
|
|
2752
|
-
__publicField$
|
|
2753
|
-
__publicField$
|
|
2754
|
-
__publicField$
|
|
2755
|
-
__publicField$
|
|
2756
|
-
__publicField$
|
|
2757
|
-
__publicField$
|
|
2758
|
-
__publicField$
|
|
2759
|
-
__publicField$
|
|
2760
|
-
__publicField$
|
|
2761
|
-
__publicField$
|
|
2762
|
-
__publicField$
|
|
2763
|
-
__publicField$
|
|
2764
|
-
__publicField$
|
|
2765
|
-
__publicField$
|
|
2766
|
-
__publicField$
|
|
2767
|
-
__publicField$
|
|
2768
|
-
__publicField$
|
|
2769
|
-
__publicField$
|
|
2770
|
-
__publicField$
|
|
2771
|
-
__publicField$
|
|
2772
|
-
__publicField$
|
|
2752
|
+
__publicField$6(this, "nextButton");
|
|
2753
|
+
__publicField$6(this, "configureLaterButton");
|
|
2754
|
+
__publicField$6(this, "skipButton");
|
|
2755
|
+
__publicField$6(this, "finishButton");
|
|
2756
|
+
__publicField$6(this, "backButton");
|
|
2757
|
+
__publicField$6(this, "smtpServerButton");
|
|
2758
|
+
__publicField$6(this, "dataImportHeader");
|
|
2759
|
+
__publicField$6(this, "installLanguagePackButton");
|
|
2760
|
+
__publicField$6(this, "installDemoDataButton");
|
|
2761
|
+
__publicField$6(this, "installMigrationAssistantButton");
|
|
2762
|
+
__publicField$6(this, "defaultValuesHeader");
|
|
2763
|
+
__publicField$6(this, "mailerConfigurationHeader");
|
|
2764
|
+
__publicField$6(this, "payPalSetupHeader");
|
|
2765
|
+
__publicField$6(this, "extensionsHeader");
|
|
2766
|
+
__publicField$6(this, "shopwareAccountHeader");
|
|
2767
|
+
__publicField$6(this, "shopwareStoreHeader");
|
|
2768
|
+
__publicField$6(this, "doneHeader");
|
|
2769
|
+
__publicField$6(this, "frwSuccessText");
|
|
2770
|
+
__publicField$6(this, "welcomeText");
|
|
2771
|
+
__publicField$6(this, "pluginCardInfo");
|
|
2772
|
+
__publicField$6(this, "dataImportCard");
|
|
2773
|
+
__publicField$6(this, "salesChannelSelectionList");
|
|
2774
|
+
__publicField$6(this, "salesChannelSelectionMultiSelect");
|
|
2775
|
+
__publicField$6(this, "smtpServerTitle");
|
|
2776
|
+
__publicField$6(this, "smtpServerFields");
|
|
2777
|
+
__publicField$6(this, "payPalPaymethods");
|
|
2778
|
+
__publicField$6(this, "payPalInfoCard");
|
|
2779
|
+
__publicField$6(this, "emailAddressInputField");
|
|
2780
|
+
__publicField$6(this, "passwordInputField");
|
|
2781
|
+
__publicField$6(this, "forgotPasswordLink");
|
|
2782
|
+
__publicField$6(this, "extensionStoreHeading");
|
|
2783
|
+
__publicField$6(this, "documentationLink");
|
|
2784
|
+
__publicField$6(this, "forumLink");
|
|
2785
|
+
__publicField$6(this, "roadmapLink");
|
|
2786
|
+
__publicField$6(this, "germanRegionSelector");
|
|
2787
|
+
__publicField$6(this, "toolsSelector");
|
|
2788
|
+
__publicField$6(this, "recommendationHeader");
|
|
2789
|
+
__publicField$6(this, "toolsRecommendedPlugin");
|
|
2773
2790
|
this.nextButton = page.getByText("Next", { exact: true });
|
|
2774
2791
|
this.configureLaterButton = page.getByText("Configure later", { exact: true });
|
|
2775
2792
|
this.skipButton = page.getByText("Skip", { exact: true });
|
|
@@ -2814,17 +2831,17 @@ class FirstRunWizard {
|
|
|
2814
2831
|
}
|
|
2815
2832
|
}
|
|
2816
2833
|
|
|
2817
|
-
var __defProp$
|
|
2818
|
-
var __defNormalProp$
|
|
2819
|
-
var __publicField$
|
|
2820
|
-
__defNormalProp$
|
|
2834
|
+
var __defProp$5 = Object.defineProperty;
|
|
2835
|
+
var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2836
|
+
var __publicField$5 = (obj, key, value) => {
|
|
2837
|
+
__defNormalProp$5(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2821
2838
|
return value;
|
|
2822
2839
|
};
|
|
2823
2840
|
class FlowBuilderCreate {
|
|
2824
2841
|
constructor(page) {
|
|
2825
2842
|
this.page = page;
|
|
2826
|
-
__publicField$
|
|
2827
|
-
__publicField$
|
|
2843
|
+
__publicField$5(this, "saveButton");
|
|
2844
|
+
__publicField$5(this, "header");
|
|
2828
2845
|
this.saveButton = page.locator(".sw-flow-detail__save");
|
|
2829
2846
|
this.header = page.locator("h2");
|
|
2830
2847
|
}
|
|
@@ -2833,24 +2850,24 @@ class FlowBuilderCreate {
|
|
|
2833
2850
|
}
|
|
2834
2851
|
}
|
|
2835
2852
|
|
|
2836
|
-
var __defProp$
|
|
2837
|
-
var __defNormalProp$
|
|
2838
|
-
var __publicField$
|
|
2839
|
-
__defNormalProp$
|
|
2853
|
+
var __defProp$4 = Object.defineProperty;
|
|
2854
|
+
var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2855
|
+
var __publicField$4 = (obj, key, value) => {
|
|
2856
|
+
__defNormalProp$4(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2840
2857
|
return value;
|
|
2841
2858
|
};
|
|
2842
2859
|
class FlowBuilderListing {
|
|
2843
2860
|
constructor(page) {
|
|
2844
2861
|
this.page = page;
|
|
2845
|
-
__publicField$
|
|
2846
|
-
__publicField$
|
|
2847
|
-
__publicField$
|
|
2848
|
-
__publicField$
|
|
2849
|
-
__publicField$
|
|
2850
|
-
__publicField$
|
|
2851
|
-
__publicField$
|
|
2852
|
-
__publicField$
|
|
2853
|
-
__publicField$
|
|
2862
|
+
__publicField$4(this, "createFlowButton");
|
|
2863
|
+
__publicField$4(this, "firstFlowName");
|
|
2864
|
+
__publicField$4(this, "firstFlowContextButton");
|
|
2865
|
+
__publicField$4(this, "flowContextMenu");
|
|
2866
|
+
__publicField$4(this, "contextMenuDownload");
|
|
2867
|
+
__publicField$4(this, "flowDownloadModal");
|
|
2868
|
+
__publicField$4(this, "downloadFlowButton");
|
|
2869
|
+
__publicField$4(this, "successAlert");
|
|
2870
|
+
__publicField$4(this, "successAlertMessage");
|
|
2854
2871
|
this.createFlowButton = page.locator(".sw-flow-list__create");
|
|
2855
2872
|
this.firstFlowName = page.locator(".sw-data-grid__cell--name a").first();
|
|
2856
2873
|
this.firstFlowContextButton = page.locator(".sw-data-grid__actions-menu").first();
|
|
@@ -2866,18 +2883,18 @@ class FlowBuilderListing {
|
|
|
2866
2883
|
}
|
|
2867
2884
|
}
|
|
2868
2885
|
|
|
2869
|
-
var __defProp$
|
|
2870
|
-
var __defNormalProp$
|
|
2871
|
-
var __publicField$
|
|
2872
|
-
__defNormalProp$
|
|
2886
|
+
var __defProp$3 = Object.defineProperty;
|
|
2887
|
+
var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2888
|
+
var __publicField$3 = (obj, key, value) => {
|
|
2889
|
+
__defNormalProp$3(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2873
2890
|
return value;
|
|
2874
2891
|
};
|
|
2875
2892
|
class FlowBuilderDetail {
|
|
2876
2893
|
constructor(page) {
|
|
2877
2894
|
this.page = page;
|
|
2878
|
-
__publicField$
|
|
2879
|
-
__publicField$
|
|
2880
|
-
__publicField$
|
|
2895
|
+
__publicField$3(this, "saveButton");
|
|
2896
|
+
__publicField$3(this, "generalTab");
|
|
2897
|
+
__publicField$3(this, "flowTab");
|
|
2881
2898
|
this.saveButton = page.locator(".sw-flow-detail__save");
|
|
2882
2899
|
this.generalTab = page.locator(".sw-flow-detail__tab-general");
|
|
2883
2900
|
this.flowTab = page.locator(".sw-flow-detail__tab-flow");
|
|
@@ -2887,20 +2904,20 @@ class FlowBuilderDetail {
|
|
|
2887
2904
|
}
|
|
2888
2905
|
}
|
|
2889
2906
|
|
|
2890
|
-
var __defProp$
|
|
2891
|
-
var __defNormalProp$
|
|
2892
|
-
var __publicField$
|
|
2893
|
-
__defNormalProp$
|
|
2907
|
+
var __defProp$2 = Object.defineProperty;
|
|
2908
|
+
var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2909
|
+
var __publicField$2 = (obj, key, value) => {
|
|
2910
|
+
__defNormalProp$2(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2894
2911
|
return value;
|
|
2895
2912
|
};
|
|
2896
2913
|
class DataSharing {
|
|
2897
2914
|
constructor(page) {
|
|
2898
2915
|
this.page = page;
|
|
2899
|
-
__publicField$
|
|
2900
|
-
__publicField$
|
|
2901
|
-
__publicField$
|
|
2902
|
-
__publicField$
|
|
2903
|
-
__publicField$
|
|
2916
|
+
__publicField$2(this, "dataConsentHeadline");
|
|
2917
|
+
__publicField$2(this, "dataSharingSuccessMessageLabel");
|
|
2918
|
+
__publicField$2(this, "dataSharingAgreeButton");
|
|
2919
|
+
__publicField$2(this, "dataSharingDisableButton");
|
|
2920
|
+
__publicField$2(this, "dataSharingTermsAgreementLabel");
|
|
2904
2921
|
this.dataConsentHeadline = page.locator("h3.sw-usage-data-consent-banner__content-headline");
|
|
2905
2922
|
this.dataSharingAgreeButton = page.getByRole("button", { name: "Agree" });
|
|
2906
2923
|
this.dataSharingDisableButton = page.getByRole("button", { name: "Disable data sharing" });
|
|
@@ -2912,23 +2929,23 @@ class DataSharing {
|
|
|
2912
2929
|
}
|
|
2913
2930
|
}
|
|
2914
2931
|
|
|
2915
|
-
var __defProp = Object.defineProperty;
|
|
2916
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2917
|
-
var __publicField = (obj, key, value) => {
|
|
2918
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2932
|
+
var __defProp$1 = Object.defineProperty;
|
|
2933
|
+
var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2934
|
+
var __publicField$1 = (obj, key, value) => {
|
|
2935
|
+
__defNormalProp$1(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2919
2936
|
return value;
|
|
2920
2937
|
};
|
|
2921
2938
|
class Dashboard {
|
|
2922
2939
|
constructor(page) {
|
|
2923
2940
|
this.page = page;
|
|
2924
|
-
__publicField(this, "welcomeHeadline");
|
|
2925
|
-
__publicField(this, "dataSharingConsentBanner");
|
|
2926
|
-
__publicField(this, "dataSharingAgreeButton");
|
|
2927
|
-
__publicField(this, "dataSharingNotAtTheMomentButton");
|
|
2928
|
-
__publicField(this, "dataSharingTermsAgreementLabel");
|
|
2929
|
-
__publicField(this, "dataSharingSettingsLink");
|
|
2930
|
-
__publicField(this, "dataSharingAcceptMessageText");
|
|
2931
|
-
__publicField(this, "dataSharingNotAtTheMomentMessageText");
|
|
2941
|
+
__publicField$1(this, "welcomeHeadline");
|
|
2942
|
+
__publicField$1(this, "dataSharingConsentBanner");
|
|
2943
|
+
__publicField$1(this, "dataSharingAgreeButton");
|
|
2944
|
+
__publicField$1(this, "dataSharingNotAtTheMomentButton");
|
|
2945
|
+
__publicField$1(this, "dataSharingTermsAgreementLabel");
|
|
2946
|
+
__publicField$1(this, "dataSharingSettingsLink");
|
|
2947
|
+
__publicField$1(this, "dataSharingAcceptMessageText");
|
|
2948
|
+
__publicField$1(this, "dataSharingNotAtTheMomentMessageText");
|
|
2932
2949
|
this.welcomeHeadline = page.locator("h1.sw-dashboard-index__welcome-title");
|
|
2933
2950
|
this.dataSharingConsentBanner = page.locator(".sw-usage-data-consent-banner");
|
|
2934
2951
|
this.dataSharingAgreeButton = page.getByRole("button", { name: "Agree" });
|
|
@@ -2954,7 +2971,7 @@ const AdminPageObjects = {
|
|
|
2954
2971
|
Dashboard,
|
|
2955
2972
|
DataSharing
|
|
2956
2973
|
};
|
|
2957
|
-
const test$
|
|
2974
|
+
const test$5 = test$e.extend({
|
|
2958
2975
|
AdminProductDetail: async ({ AdminPage }, use) => {
|
|
2959
2976
|
await use(new ProductDetail(AdminPage));
|
|
2960
2977
|
},
|
|
@@ -2984,7 +3001,7 @@ const test$4 = test$d.extend({
|
|
|
2984
3001
|
}
|
|
2985
3002
|
});
|
|
2986
3003
|
|
|
2987
|
-
const ProductData = test$
|
|
3004
|
+
const ProductData = test$e.extend({
|
|
2988
3005
|
ProductData: async ({ IdProvider, SalesChannelBaseConfig, AdminApiContext, DefaultSalesChannel }, use) => {
|
|
2989
3006
|
const { id: productId, uuid: productUuid } = IdProvider.getIdPair();
|
|
2990
3007
|
const productName = `Product_test_${productId}`;
|
|
@@ -3033,7 +3050,7 @@ const ProductData = test$d.extend({
|
|
|
3033
3050
|
}
|
|
3034
3051
|
});
|
|
3035
3052
|
|
|
3036
|
-
const CategoryData = test$
|
|
3053
|
+
const CategoryData = test$e.extend({
|
|
3037
3054
|
CategoryData: async ({ IdProvider, AdminApiContext, DefaultSalesChannel, ProductData }, use) => {
|
|
3038
3055
|
const { id: categoryId, uuid: categoryUuid } = IdProvider.getIdPair();
|
|
3039
3056
|
const categoryName = `Category-${categoryId}`;
|
|
@@ -3060,7 +3077,7 @@ const CategoryData = test$d.extend({
|
|
|
3060
3077
|
}
|
|
3061
3078
|
});
|
|
3062
3079
|
|
|
3063
|
-
const DigitalProductData = test$
|
|
3080
|
+
const DigitalProductData = test$e.extend({
|
|
3064
3081
|
DigitalProductData: async ({ ProductData, IdProvider, AdminApiContext }, use) => {
|
|
3065
3082
|
const newMediaResource = await AdminApiContext.post("./media?_response", {
|
|
3066
3083
|
data: {
|
|
@@ -3115,7 +3132,7 @@ const DigitalProductData = test$d.extend({
|
|
|
3115
3132
|
}
|
|
3116
3133
|
});
|
|
3117
3134
|
|
|
3118
|
-
const PropertiesData = test$
|
|
3135
|
+
const PropertiesData = test$e.extend({
|
|
3119
3136
|
PropertiesData: async ({ AdminApiContext }, use) => {
|
|
3120
3137
|
const propertyGroupColorResponse = await AdminApiContext.post("property-group?_response=1", {
|
|
3121
3138
|
data: {
|
|
@@ -3165,7 +3182,7 @@ const PropertiesData = test$d.extend({
|
|
|
3165
3182
|
}
|
|
3166
3183
|
});
|
|
3167
3184
|
|
|
3168
|
-
const CartWithProductData = test$
|
|
3185
|
+
const CartWithProductData = test$e.extend({
|
|
3169
3186
|
CartWithProductData: async ({ StoreApiContext, DefaultSalesChannel, ProductData }, use) => {
|
|
3170
3187
|
await StoreApiContext.login(DefaultSalesChannel.customer);
|
|
3171
3188
|
const cartResponse = await StoreApiContext.post("checkout/cart", {
|
|
@@ -3191,7 +3208,7 @@ const CartWithProductData = test$d.extend({
|
|
|
3191
3208
|
}
|
|
3192
3209
|
});
|
|
3193
3210
|
|
|
3194
|
-
const PromotionWithCodeData = test$
|
|
3211
|
+
const PromotionWithCodeData = test$e.extend({
|
|
3195
3212
|
PromotionWithCodeData: async ({ AdminApiContext, DefaultSalesChannel, IdProvider }, use) => {
|
|
3196
3213
|
const promotionCode = `${IdProvider.getIdPair().id}`;
|
|
3197
3214
|
const promotionName = `Test Promotion ${promotionCode}`;
|
|
@@ -3233,7 +3250,7 @@ const PromotionWithCodeData = test$d.extend({
|
|
|
3233
3250
|
}
|
|
3234
3251
|
});
|
|
3235
3252
|
|
|
3236
|
-
const MediaData = test$
|
|
3253
|
+
const MediaData = test$e.extend({
|
|
3237
3254
|
MediaData: async ({ AdminApiContext, IdProvider }, use) => {
|
|
3238
3255
|
const imageId = IdProvider.getIdPair().id;
|
|
3239
3256
|
const imageFilePath = `./tmp/image-${imageId}.png`;
|
|
@@ -3280,7 +3297,7 @@ const MediaData = test$d.extend({
|
|
|
3280
3297
|
}
|
|
3281
3298
|
});
|
|
3282
3299
|
|
|
3283
|
-
const OrderData = test$
|
|
3300
|
+
const OrderData = test$e.extend({
|
|
3284
3301
|
OrderData: async ({ IdProvider, AdminApiContext, SalesChannelBaseConfig, DefaultSalesChannel, ProductData }, use) => {
|
|
3285
3302
|
const requests = {
|
|
3286
3303
|
currencyEUR: getCurrency("EUR", AdminApiContext),
|
|
@@ -3497,7 +3514,7 @@ const OrderData = test$d.extend({
|
|
|
3497
3514
|
}
|
|
3498
3515
|
});
|
|
3499
3516
|
|
|
3500
|
-
const TagData = test$
|
|
3517
|
+
const TagData = test$e.extend({
|
|
3501
3518
|
TagData: async ({ IdProvider, AdminApiContext }, use) => {
|
|
3502
3519
|
const tagUUID = IdProvider.getIdPair().uuid;
|
|
3503
3520
|
const tagId = IdProvider.getIdPair().id;
|
|
@@ -3516,7 +3533,7 @@ const TagData = test$d.extend({
|
|
|
3516
3533
|
}
|
|
3517
3534
|
});
|
|
3518
3535
|
|
|
3519
|
-
const test$
|
|
3536
|
+
const test$4 = mergeTests(
|
|
3520
3537
|
ProductData,
|
|
3521
3538
|
CategoryData,
|
|
3522
3539
|
DigitalProductData,
|
|
@@ -3528,7 +3545,7 @@ const test$3 = mergeTests(
|
|
|
3528
3545
|
TagData
|
|
3529
3546
|
);
|
|
3530
3547
|
|
|
3531
|
-
const SaveProduct = test$
|
|
3548
|
+
const SaveProduct = test$e.extend({
|
|
3532
3549
|
SaveProduct: async ({ ShopAdmin, AdminProductDetail }, use) => {
|
|
3533
3550
|
const task = () => {
|
|
3534
3551
|
return async function SaveProduct2() {
|
|
@@ -3546,11 +3563,28 @@ const SaveProduct = test$d.extend({
|
|
|
3546
3563
|
}
|
|
3547
3564
|
});
|
|
3548
3565
|
|
|
3549
|
-
const
|
|
3550
|
-
|
|
3566
|
+
const ExpectNotification = test$e.extend({
|
|
3567
|
+
ExpectNotification: async ({ ShopAdmin }, use) => {
|
|
3568
|
+
const task = (message, close = true) => {
|
|
3569
|
+
return async function ExpectNotification2() {
|
|
3570
|
+
const notification = ShopAdmin.page.locator(".sw-alert", { hasText: message });
|
|
3571
|
+
await ShopAdmin.expects(notification).toBeVisible();
|
|
3572
|
+
await ShopAdmin.expects(notification).toContainText(message);
|
|
3573
|
+
if (close) {
|
|
3574
|
+
await notification.locator(".sw-alert__close").click();
|
|
3575
|
+
}
|
|
3576
|
+
};
|
|
3577
|
+
};
|
|
3578
|
+
await use(task);
|
|
3579
|
+
}
|
|
3580
|
+
});
|
|
3581
|
+
|
|
3582
|
+
const test$3 = mergeTests(
|
|
3583
|
+
SaveProduct,
|
|
3584
|
+
ExpectNotification
|
|
3551
3585
|
);
|
|
3552
3586
|
|
|
3553
|
-
const Login = test$
|
|
3587
|
+
const Login = test$e.extend({
|
|
3554
3588
|
Login: async ({ ShopCustomer, DefaultSalesChannel, StorefrontAccountLogin, StorefrontAccount }, use) => {
|
|
3555
3589
|
const task = () => {
|
|
3556
3590
|
return async function Login2() {
|
|
@@ -3566,7 +3600,7 @@ const Login = test$d.extend({
|
|
|
3566
3600
|
}
|
|
3567
3601
|
});
|
|
3568
3602
|
|
|
3569
|
-
const Logout = test$
|
|
3603
|
+
const Logout = test$e.extend({
|
|
3570
3604
|
Logout: async ({ ShopCustomer, StorefrontAccountLogin }, use) => {
|
|
3571
3605
|
const task = () => {
|
|
3572
3606
|
return async function Logout2() {
|
|
@@ -3580,7 +3614,7 @@ const Logout = test$d.extend({
|
|
|
3580
3614
|
}
|
|
3581
3615
|
});
|
|
3582
3616
|
|
|
3583
|
-
const Register = test$
|
|
3617
|
+
const Register = test$e.extend({
|
|
3584
3618
|
Register: async ({ StorefrontAccountLogin, AdminApiContext }, use) => {
|
|
3585
3619
|
const registrationData = {
|
|
3586
3620
|
firstName: "Jeff",
|
|
@@ -3623,7 +3657,7 @@ const Register = test$d.extend({
|
|
|
3623
3657
|
}
|
|
3624
3658
|
});
|
|
3625
3659
|
|
|
3626
|
-
const AddProductToCart = test$
|
|
3660
|
+
const AddProductToCart = test$e.extend({
|
|
3627
3661
|
AddProductToCart: async ({ ShopCustomer, StorefrontProductDetail }, use) => {
|
|
3628
3662
|
const task = (ProductData, quantity = "1") => {
|
|
3629
3663
|
return async function AddProductToCart2() {
|
|
@@ -3637,7 +3671,7 @@ const AddProductToCart = test$d.extend({
|
|
|
3637
3671
|
}
|
|
3638
3672
|
});
|
|
3639
3673
|
|
|
3640
|
-
const ProceedFromProductToCheckout = test$
|
|
3674
|
+
const ProceedFromProductToCheckout = test$e.extend({
|
|
3641
3675
|
ProceedFromProductToCheckout: async ({ ShopCustomer, StorefrontProductDetail, StorefrontCheckoutConfirm }, use) => {
|
|
3642
3676
|
const task = () => {
|
|
3643
3677
|
return async function ProceedFromProductToCheckout2() {
|
|
@@ -3649,7 +3683,7 @@ const ProceedFromProductToCheckout = test$d.extend({
|
|
|
3649
3683
|
}
|
|
3650
3684
|
});
|
|
3651
3685
|
|
|
3652
|
-
const ProceedFromCartToCheckout = test$
|
|
3686
|
+
const ProceedFromCartToCheckout = test$e.extend({
|
|
3653
3687
|
ProceedFromCartToCheckout: async ({
|
|
3654
3688
|
ShopCustomer,
|
|
3655
3689
|
StorefrontCheckoutCart,
|
|
@@ -3665,7 +3699,7 @@ const ProceedFromCartToCheckout = test$d.extend({
|
|
|
3665
3699
|
}
|
|
3666
3700
|
});
|
|
3667
3701
|
|
|
3668
|
-
const ConfirmTermsAndConditions = test$
|
|
3702
|
+
const ConfirmTermsAndConditions = test$e.extend({
|
|
3669
3703
|
ConfirmTermsAndConditions: async ({ ShopCustomer, StorefrontCheckoutConfirm }, use) => {
|
|
3670
3704
|
const task = () => {
|
|
3671
3705
|
return async function ConfirmTermsAndConditions2() {
|
|
@@ -3677,7 +3711,7 @@ const ConfirmTermsAndConditions = test$d.extend({
|
|
|
3677
3711
|
}
|
|
3678
3712
|
});
|
|
3679
3713
|
|
|
3680
|
-
const SelectCashOnDeliveryPaymentOption = test$
|
|
3714
|
+
const SelectCashOnDeliveryPaymentOption = test$e.extend({
|
|
3681
3715
|
SelectCashOnDeliveryPaymentOption: async ({ ShopCustomer, StorefrontCheckoutConfirm }, use) => {
|
|
3682
3716
|
const task = () => {
|
|
3683
3717
|
return async function SelectCashOnDeliveryPaymentOption2() {
|
|
@@ -3689,7 +3723,7 @@ const SelectCashOnDeliveryPaymentOption = test$d.extend({
|
|
|
3689
3723
|
}
|
|
3690
3724
|
});
|
|
3691
3725
|
|
|
3692
|
-
const SelectInvoicePaymentOption = test$
|
|
3726
|
+
const SelectInvoicePaymentOption = test$e.extend({
|
|
3693
3727
|
SelectInvoicePaymentOption: async ({ ShopCustomer, StorefrontCheckoutConfirm }, use) => {
|
|
3694
3728
|
const task = () => {
|
|
3695
3729
|
return async function SelectInvoicePaymentOption2() {
|
|
@@ -3701,7 +3735,7 @@ const SelectInvoicePaymentOption = test$d.extend({
|
|
|
3701
3735
|
}
|
|
3702
3736
|
});
|
|
3703
3737
|
|
|
3704
|
-
const SelectPaidInAdvancePaymentOption = test$
|
|
3738
|
+
const SelectPaidInAdvancePaymentOption = test$e.extend({
|
|
3705
3739
|
SelectPaidInAdvancePaymentOption: async ({ ShopCustomer, StorefrontCheckoutConfirm }, use) => {
|
|
3706
3740
|
const task = () => {
|
|
3707
3741
|
return async function SelectPaidInAdvancePaymentOption2() {
|
|
@@ -3713,7 +3747,7 @@ const SelectPaidInAdvancePaymentOption = test$d.extend({
|
|
|
3713
3747
|
}
|
|
3714
3748
|
});
|
|
3715
3749
|
|
|
3716
|
-
const SelectStandardShippingOption = test$
|
|
3750
|
+
const SelectStandardShippingOption = test$e.extend({
|
|
3717
3751
|
SelectStandardShippingOption: async ({ ShopCustomer, StorefrontCheckoutConfirm }, use) => {
|
|
3718
3752
|
const task = () => {
|
|
3719
3753
|
return async function SelectStandardShippingOption2() {
|
|
@@ -3725,7 +3759,7 @@ const SelectStandardShippingOption = test$d.extend({
|
|
|
3725
3759
|
}
|
|
3726
3760
|
});
|
|
3727
3761
|
|
|
3728
|
-
const SelectExpressShippingOption = test$
|
|
3762
|
+
const SelectExpressShippingOption = test$e.extend({
|
|
3729
3763
|
SelectExpressShippingOption: async ({ ShopCustomer, StorefrontCheckoutConfirm }, use) => {
|
|
3730
3764
|
const task = () => {
|
|
3731
3765
|
return async function SelectExpressShippingOption2() {
|
|
@@ -3737,7 +3771,7 @@ const SelectExpressShippingOption = test$d.extend({
|
|
|
3737
3771
|
}
|
|
3738
3772
|
});
|
|
3739
3773
|
|
|
3740
|
-
const SubmitOrder = test$
|
|
3774
|
+
const SubmitOrder = test$e.extend({
|
|
3741
3775
|
SubmitOrder: async ({ ShopCustomer, StorefrontCheckoutConfirm, StorefrontCheckoutFinish }, use) => {
|
|
3742
3776
|
const task = () => {
|
|
3743
3777
|
return async function SubmitOrder2() {
|
|
@@ -3749,7 +3783,7 @@ const SubmitOrder = test$d.extend({
|
|
|
3749
3783
|
}
|
|
3750
3784
|
});
|
|
3751
3785
|
|
|
3752
|
-
const OpenSearchResultPage = test$
|
|
3786
|
+
const OpenSearchResultPage = test$e.extend({
|
|
3753
3787
|
OpenSearchResultPage: async ({ StorefrontSearch }, use) => {
|
|
3754
3788
|
const task = (searchTerm) => {
|
|
3755
3789
|
return async function OpenSearchResultPage2() {
|
|
@@ -3761,7 +3795,7 @@ const OpenSearchResultPage = test$d.extend({
|
|
|
3761
3795
|
}
|
|
3762
3796
|
});
|
|
3763
3797
|
|
|
3764
|
-
const OpenSearchSuggestPage = test$
|
|
3798
|
+
const OpenSearchSuggestPage = test$e.extend({
|
|
3765
3799
|
OpenSearchSuggestPage: async ({ StorefrontSearchSuggest }, use) => {
|
|
3766
3800
|
const task = (searchTerm) => {
|
|
3767
3801
|
return async function OpenSearchSuggestPage2() {
|
|
@@ -3773,7 +3807,7 @@ const OpenSearchSuggestPage = test$d.extend({
|
|
|
3773
3807
|
}
|
|
3774
3808
|
});
|
|
3775
3809
|
|
|
3776
|
-
const ValidateAccessibility = test$
|
|
3810
|
+
const ValidateAccessibility = test$e.extend({
|
|
3777
3811
|
ValidateAccessibility: async ({ ShopCustomer }, use) => {
|
|
3778
3812
|
const task = (pageName, assertViolations = true, createReport = true, ruleTags = ["wcag2a", "wcag2aa", "wcag2aaa", "wcag21a", "wcag21aa", "best-practice"], outputDir = "test-results/AccessibilityReports") => {
|
|
3779
3813
|
return async function ValidateAccessibility2() {
|
|
@@ -3802,7 +3836,7 @@ const ValidateAccessibility = test$d.extend({
|
|
|
3802
3836
|
}
|
|
3803
3837
|
});
|
|
3804
3838
|
|
|
3805
|
-
const test$
|
|
3839
|
+
const test$2 = mergeTests(
|
|
3806
3840
|
Login,
|
|
3807
3841
|
Logout,
|
|
3808
3842
|
Register,
|
|
@@ -3821,18 +3855,121 @@ const test$1 = mergeTests(
|
|
|
3821
3855
|
ValidateAccessibility
|
|
3822
3856
|
);
|
|
3823
3857
|
|
|
3858
|
+
var __defProp = Object.defineProperty;
|
|
3859
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3860
|
+
var __publicField = (obj, key, value) => {
|
|
3861
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
3862
|
+
return value;
|
|
3863
|
+
};
|
|
3864
|
+
class FeatureService {
|
|
3865
|
+
constructor(apiContext) {
|
|
3866
|
+
__publicField(this, "apiContext");
|
|
3867
|
+
__publicField(this, "features", {});
|
|
3868
|
+
__publicField(this, "resetFeatures", {});
|
|
3869
|
+
this.apiContext = apiContext;
|
|
3870
|
+
}
|
|
3871
|
+
async enable(name) {
|
|
3872
|
+
if (Array.isArray(name)) {
|
|
3873
|
+
for (const n of name) {
|
|
3874
|
+
await this.enable(n);
|
|
3875
|
+
}
|
|
3876
|
+
return;
|
|
3877
|
+
}
|
|
3878
|
+
await this.loadFeatures();
|
|
3879
|
+
if (!this.features[name]) {
|
|
3880
|
+
throw new Error(`Feature flag ${name} does not exist`);
|
|
3881
|
+
}
|
|
3882
|
+
if (this.features[name].active) {
|
|
3883
|
+
return;
|
|
3884
|
+
}
|
|
3885
|
+
if (!this.features[name].toggleable) {
|
|
3886
|
+
throw new Error(`Feature flag ${name} is not toggleable`);
|
|
3887
|
+
}
|
|
3888
|
+
const req = await this.apiContext.post(`_action/feature-flag/enable/${name}`);
|
|
3889
|
+
if (!req.ok()) {
|
|
3890
|
+
throw new Error(`Could not enable feature flag ${name}`);
|
|
3891
|
+
}
|
|
3892
|
+
this.features[name].active = true;
|
|
3893
|
+
if (this.resetFeatures[name] === void 0) {
|
|
3894
|
+
this.resetFeatures[name] = false;
|
|
3895
|
+
} else {
|
|
3896
|
+
delete this.resetFeatures[name];
|
|
3897
|
+
}
|
|
3898
|
+
}
|
|
3899
|
+
async disable(name) {
|
|
3900
|
+
if (Array.isArray(name)) {
|
|
3901
|
+
for (const n of name) {
|
|
3902
|
+
await this.disable(n);
|
|
3903
|
+
}
|
|
3904
|
+
return;
|
|
3905
|
+
}
|
|
3906
|
+
await this.loadFeatures();
|
|
3907
|
+
if (!this.features[name]) {
|
|
3908
|
+
throw new Error(`Feature flag ${name} does not exist`);
|
|
3909
|
+
}
|
|
3910
|
+
if (!this.features[name].active) {
|
|
3911
|
+
return;
|
|
3912
|
+
}
|
|
3913
|
+
if (!this.features[name].toggleable) {
|
|
3914
|
+
throw new Error(`Feature flag ${name} is not toggleable`);
|
|
3915
|
+
}
|
|
3916
|
+
const req = await this.apiContext.post(`_action/feature-flag/disable/${name}`);
|
|
3917
|
+
if (!req.ok()) {
|
|
3918
|
+
throw new Error(`Could not disable feature flag ${name}`);
|
|
3919
|
+
}
|
|
3920
|
+
this.features[name].active = false;
|
|
3921
|
+
if (this.resetFeatures[name] === void 0) {
|
|
3922
|
+
this.resetFeatures[name] = true;
|
|
3923
|
+
} else {
|
|
3924
|
+
delete this.resetFeatures[name];
|
|
3925
|
+
}
|
|
3926
|
+
}
|
|
3927
|
+
async isEnabled(name) {
|
|
3928
|
+
await this.loadFeatures();
|
|
3929
|
+
return this.features[name]?.active ?? false;
|
|
3930
|
+
}
|
|
3931
|
+
async loadFeatures() {
|
|
3932
|
+
if (Object.keys(this.features).length >= 0) {
|
|
3933
|
+
return;
|
|
3934
|
+
}
|
|
3935
|
+
const res = await this.apiContext.get("_action/feature-flag");
|
|
3936
|
+
if (!res.ok()) {
|
|
3937
|
+
throw new Error("Could not load feature flags");
|
|
3938
|
+
}
|
|
3939
|
+
this.features = await res.json();
|
|
3940
|
+
}
|
|
3941
|
+
async cleanup() {
|
|
3942
|
+
for (const [name, reset] of Object.entries(this.resetFeatures)) {
|
|
3943
|
+
if (reset) {
|
|
3944
|
+
await this.enable(name);
|
|
3945
|
+
} else {
|
|
3946
|
+
await this.disable(name);
|
|
3947
|
+
}
|
|
3948
|
+
}
|
|
3949
|
+
}
|
|
3950
|
+
}
|
|
3951
|
+
|
|
3952
|
+
const test$1 = test$e.extend({
|
|
3953
|
+
FeatureService: async ({ AdminApiContext }, use) => {
|
|
3954
|
+
const service = new FeatureService(AdminApiContext);
|
|
3955
|
+
await use(service);
|
|
3956
|
+
await service.cleanup();
|
|
3957
|
+
}
|
|
3958
|
+
});
|
|
3959
|
+
|
|
3824
3960
|
const test = mergeTests(
|
|
3825
|
-
test$
|
|
3961
|
+
test$7,
|
|
3962
|
+
test$c,
|
|
3826
3963
|
test$b,
|
|
3827
3964
|
test$a,
|
|
3828
3965
|
test$9,
|
|
3829
3966
|
test$8,
|
|
3830
|
-
test$
|
|
3967
|
+
test$1,
|
|
3968
|
+
test$6,
|
|
3831
3969
|
test$5,
|
|
3832
3970
|
test$4,
|
|
3833
3971
|
test$3,
|
|
3834
|
-
test$2
|
|
3835
|
-
test$1
|
|
3972
|
+
test$2
|
|
3836
3973
|
);
|
|
3837
3974
|
|
|
3838
3975
|
export { AdminPageObjects, StorefrontPageObjects, TestDataService, createRandomImage, extractIdFromUrl, getCountryId, getCurrency, getDefaultShippingMethodId, getFlowId, getLanguageData, getMediaId, getOrderTransactionId, getPaymentMethodId, getPromotionWithDiscount, getSalutationId, getSnippetSetId, getStateMachineId, getStateMachineStateId, getTaxId, getThemeId, isSaaSInstance, isThemeCompiled, setOrderStatus, test };
|