@shopware-ag/acceptance-test-suite 2.3.1 → 2.3.4
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 +17 -12
- package/dist/index.d.ts +17 -12
- package/dist/index.mjs +52 -65
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -2,7 +2,6 @@ import * as _playwright_test from '@playwright/test';
|
|
|
2
2
|
import { APIRequestContext, APIResponse, Page, Locator } from '@playwright/test';
|
|
3
3
|
export * from '@playwright/test';
|
|
4
4
|
import * as playwright_core from 'playwright-core';
|
|
5
|
-
import { Page as Page$1 } from 'playwright-core';
|
|
6
5
|
import { components } from '@shopware/api-client/admin-api-types';
|
|
7
6
|
import { Image } from 'image-js';
|
|
8
7
|
|
|
@@ -28,8 +27,8 @@ declare class AdminApiContext {
|
|
|
28
27
|
constructor(context: APIRequestContext, options: AdminApiContextOptions);
|
|
29
28
|
static create(options?: AdminApiContextOptions): Promise<AdminApiContext>;
|
|
30
29
|
private static createApiRequestContext;
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
static authenticateWithClientCredentials(context: APIRequestContext, options: AdminApiContextOptions): Promise<string>;
|
|
31
|
+
static authenticateWithUserPassword(context: APIRequestContext, options: AdminApiContextOptions): Promise<string>;
|
|
33
32
|
isAuthenticated(): boolean;
|
|
34
33
|
get<PAYLOAD>(url: string, options?: RequestOptions$1<PAYLOAD>): Promise<APIResponse>;
|
|
35
34
|
post<PAYLOAD>(url: string, options?: RequestOptions$1<PAYLOAD>): Promise<APIResponse>;
|
|
@@ -158,7 +157,7 @@ type Tag = components['schemas']['Tag'] & {
|
|
|
158
157
|
type Rule = components['schemas']['Rule'] & {
|
|
159
158
|
id: string;
|
|
160
159
|
};
|
|
161
|
-
type Currency = components['schemas']['Currency'] & {
|
|
160
|
+
type Currency$1 = components['schemas']['Currency'] & {
|
|
162
161
|
id: string;
|
|
163
162
|
};
|
|
164
163
|
type Order = components['schemas']['Order'] & {
|
|
@@ -387,7 +386,7 @@ declare class TestDataService {
|
|
|
387
386
|
*
|
|
388
387
|
* @param isoCode - The ISO code of the currency, for example "EUR".
|
|
389
388
|
*/
|
|
390
|
-
getCurrency(isoCode: string): Promise<Currency>;
|
|
389
|
+
getCurrency(isoCode: string): Promise<Currency$1>;
|
|
391
390
|
/**
|
|
392
391
|
* Retrieves a rule based on its name.
|
|
393
392
|
*
|
|
@@ -481,7 +480,7 @@ declare class TestDataService {
|
|
|
481
480
|
active: boolean;
|
|
482
481
|
} & Partial<Category$1>;
|
|
483
482
|
getBasicCustomerStruct(salesChannelId: string, customerGroupId: string, languageId: string, countryId: string, defaultPaymentMethodId: string, salutationId: string, overrides?: Partial<Customer>): Partial<Customer>;
|
|
484
|
-
getBasicOrderStruct(lineItems: SimpleLineItem[], languageId: string, currency: Currency, paymentMethod: PaymentMethod, shippingMethod: ShippingMethod, orderState: StateMachineState, deliveryState: StateMachineState, transactionState: StateMachineState, customer: Customer, customerAddress: CustomerAddress, salesChannelId?: string, overrides?: Partial<Order>): Partial<Order>;
|
|
483
|
+
getBasicOrderStruct(lineItems: SimpleLineItem[], languageId: string, currency: Currency$1, paymentMethod: PaymentMethod, shippingMethod: ShippingMethod, orderState: StateMachineState, deliveryState: StateMachineState, transactionState: StateMachineState, customer: Customer, customerAddress: CustomerAddress, salesChannelId?: string, overrides?: Partial<Order>): Partial<Order>;
|
|
485
484
|
getBasicProductLineItemStruct(lineItem: SimpleLineItem): {
|
|
486
485
|
productId: string;
|
|
487
486
|
referencedId: string;
|
|
@@ -996,12 +995,18 @@ interface DataFixtureTypes {
|
|
|
996
995
|
interface FixtureTypes extends ApiContextTypes, PageContextTypes, ActorFixtureTypes, TestDataFixtureTypes, HelperFixtureTypes, DefaultSalesChannelTypes, StorefrontPageTypes, AdministrationPageTypes, DataFixtureTypes {
|
|
997
996
|
}
|
|
998
997
|
|
|
999
|
-
|
|
998
|
+
type Language = components['schemas']['Currency'] & {
|
|
1000
999
|
id: string;
|
|
1001
|
-
|
|
1002
|
-
|
|
1000
|
+
translationCode: components['schemas']['Locale'] & {
|
|
1001
|
+
id: string;
|
|
1002
|
+
};
|
|
1003
|
+
};
|
|
1004
|
+
declare const getLanguageData: (languageCode: string, adminApiContext: AdminApiContext) => Promise<Language>;
|
|
1003
1005
|
declare const getSnippetSetId: (languageCode: string, adminApiContext: AdminApiContext) => Promise<string>;
|
|
1004
|
-
|
|
1006
|
+
type Currency = components['schemas']['Currency'] & {
|
|
1007
|
+
id: string;
|
|
1008
|
+
};
|
|
1009
|
+
declare const getCurrency: (isoCode: string, adminApiContext: AdminApiContext) => Promise<Currency>;
|
|
1005
1010
|
declare const getTaxId: (adminApiContext: AdminApiContext) => Promise<string>;
|
|
1006
1011
|
declare const getPaymentMethodId: (adminApiContext: AdminApiContext, handlerId?: string) => Promise<string>;
|
|
1007
1012
|
declare const getDefaultShippingMethodId: (adminApiContext: AdminApiContext) => Promise<string>;
|
|
@@ -1020,7 +1025,7 @@ type OrderStatus = 'cancel' | 'complete' | 'reopen' | 'process';
|
|
|
1020
1025
|
declare const setOrderStatus: (orderId: string, orderStatus: OrderStatus, adminApiContext: AdminApiContext) => Promise<APIResponse>;
|
|
1021
1026
|
|
|
1022
1027
|
declare const isSaaSInstance: (adminApiContext: AdminApiContext) => Promise<boolean>;
|
|
1023
|
-
declare const isThemeCompiled: (
|
|
1028
|
+
declare const isThemeCompiled: (context: AdminApiContext, storefrontUrl: string) => Promise<boolean>;
|
|
1024
1029
|
|
|
1025
1030
|
declare function createRandomImage(width?: number, height?: number): Image;
|
|
1026
1031
|
|
|
@@ -1060,4 +1065,4 @@ declare const test: _playwright_test.TestType<_playwright_test.PlaywrightTestArg
|
|
|
1060
1065
|
ValidateAccessibility: (pageName: string, assertViolations?: boolean | undefined, createReport?: boolean | undefined, ruleTags?: string[] | undefined, outputDir?: string | undefined) => () => Promise<void>;
|
|
1061
1066
|
}, _playwright_test.PlaywrightWorkerArgs & _playwright_test.PlaywrightWorkerOptions & FixtureTypes>;
|
|
1062
1067
|
|
|
1063
|
-
export { AdminPageObjects, type Category$1 as Category, type CreatedRecord, type Currency, type Customer, type CustomerAddress, type DataServiceOptions, type FixtureTypes, type Media, type Order, type PageObject, type PaymentMethod, type Price, type Product, type ProductPrice, type Promotion, type PropertyGroup, type Rule, type SalesChannel, type Salutation, type ShippingMethod, type SimpleLineItem, type StateMachine, type StateMachineState, StorefrontPageObjects, type SyncApiOperation, type Tag, type Task, TestDataService, createRandomImage, extractIdFromUrl, getCountryId, getCurrency, getDefaultShippingMethodId, getFlowId, getLanguageData, getMediaId, getOrderTransactionId, getPaymentMethodId, getSalutationId, getSnippetSetId, getStateMachineId, getStateMachineStateId, getTaxId, getThemeId, isSaaSInstance, isThemeCompiled, setOrderStatus, test };
|
|
1068
|
+
export { AdminPageObjects, type Category$1 as Category, type CreatedRecord, type Currency$1 as Currency, type Customer, type CustomerAddress, type DataServiceOptions, type FixtureTypes, type Media, type Order, type PageObject, type PaymentMethod, type Price, type Product, type ProductPrice, type Promotion, type PropertyGroup, type Rule, type SalesChannel, type Salutation, type ShippingMethod, type SimpleLineItem, type StateMachine, type StateMachineState, StorefrontPageObjects, type SyncApiOperation, type Tag, type Task, TestDataService, createRandomImage, extractIdFromUrl, getCountryId, getCurrency, getDefaultShippingMethodId, getFlowId, getLanguageData, getMediaId, getOrderTransactionId, getPaymentMethodId, getSalutationId, getSnippetSetId, getStateMachineId, getStateMachineStateId, getTaxId, getThemeId, isSaaSInstance, isThemeCompiled, setOrderStatus, test };
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ import * as _playwright_test from '@playwright/test';
|
|
|
2
2
|
import { APIRequestContext, APIResponse, Page, Locator } from '@playwright/test';
|
|
3
3
|
export * from '@playwright/test';
|
|
4
4
|
import * as playwright_core from 'playwright-core';
|
|
5
|
-
import { Page as Page$1 } from 'playwright-core';
|
|
6
5
|
import { components } from '@shopware/api-client/admin-api-types';
|
|
7
6
|
import { Image } from 'image-js';
|
|
8
7
|
|
|
@@ -28,8 +27,8 @@ declare class AdminApiContext {
|
|
|
28
27
|
constructor(context: APIRequestContext, options: AdminApiContextOptions);
|
|
29
28
|
static create(options?: AdminApiContextOptions): Promise<AdminApiContext>;
|
|
30
29
|
private static createApiRequestContext;
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
static authenticateWithClientCredentials(context: APIRequestContext, options: AdminApiContextOptions): Promise<string>;
|
|
31
|
+
static authenticateWithUserPassword(context: APIRequestContext, options: AdminApiContextOptions): Promise<string>;
|
|
33
32
|
isAuthenticated(): boolean;
|
|
34
33
|
get<PAYLOAD>(url: string, options?: RequestOptions$1<PAYLOAD>): Promise<APIResponse>;
|
|
35
34
|
post<PAYLOAD>(url: string, options?: RequestOptions$1<PAYLOAD>): Promise<APIResponse>;
|
|
@@ -158,7 +157,7 @@ type Tag = components['schemas']['Tag'] & {
|
|
|
158
157
|
type Rule = components['schemas']['Rule'] & {
|
|
159
158
|
id: string;
|
|
160
159
|
};
|
|
161
|
-
type Currency = components['schemas']['Currency'] & {
|
|
160
|
+
type Currency$1 = components['schemas']['Currency'] & {
|
|
162
161
|
id: string;
|
|
163
162
|
};
|
|
164
163
|
type Order = components['schemas']['Order'] & {
|
|
@@ -387,7 +386,7 @@ declare class TestDataService {
|
|
|
387
386
|
*
|
|
388
387
|
* @param isoCode - The ISO code of the currency, for example "EUR".
|
|
389
388
|
*/
|
|
390
|
-
getCurrency(isoCode: string): Promise<Currency>;
|
|
389
|
+
getCurrency(isoCode: string): Promise<Currency$1>;
|
|
391
390
|
/**
|
|
392
391
|
* Retrieves a rule based on its name.
|
|
393
392
|
*
|
|
@@ -481,7 +480,7 @@ declare class TestDataService {
|
|
|
481
480
|
active: boolean;
|
|
482
481
|
} & Partial<Category$1>;
|
|
483
482
|
getBasicCustomerStruct(salesChannelId: string, customerGroupId: string, languageId: string, countryId: string, defaultPaymentMethodId: string, salutationId: string, overrides?: Partial<Customer>): Partial<Customer>;
|
|
484
|
-
getBasicOrderStruct(lineItems: SimpleLineItem[], languageId: string, currency: Currency, paymentMethod: PaymentMethod, shippingMethod: ShippingMethod, orderState: StateMachineState, deliveryState: StateMachineState, transactionState: StateMachineState, customer: Customer, customerAddress: CustomerAddress, salesChannelId?: string, overrides?: Partial<Order>): Partial<Order>;
|
|
483
|
+
getBasicOrderStruct(lineItems: SimpleLineItem[], languageId: string, currency: Currency$1, paymentMethod: PaymentMethod, shippingMethod: ShippingMethod, orderState: StateMachineState, deliveryState: StateMachineState, transactionState: StateMachineState, customer: Customer, customerAddress: CustomerAddress, salesChannelId?: string, overrides?: Partial<Order>): Partial<Order>;
|
|
485
484
|
getBasicProductLineItemStruct(lineItem: SimpleLineItem): {
|
|
486
485
|
productId: string;
|
|
487
486
|
referencedId: string;
|
|
@@ -996,12 +995,18 @@ interface DataFixtureTypes {
|
|
|
996
995
|
interface FixtureTypes extends ApiContextTypes, PageContextTypes, ActorFixtureTypes, TestDataFixtureTypes, HelperFixtureTypes, DefaultSalesChannelTypes, StorefrontPageTypes, AdministrationPageTypes, DataFixtureTypes {
|
|
997
996
|
}
|
|
998
997
|
|
|
999
|
-
|
|
998
|
+
type Language = components['schemas']['Currency'] & {
|
|
1000
999
|
id: string;
|
|
1001
|
-
|
|
1002
|
-
|
|
1000
|
+
translationCode: components['schemas']['Locale'] & {
|
|
1001
|
+
id: string;
|
|
1002
|
+
};
|
|
1003
|
+
};
|
|
1004
|
+
declare const getLanguageData: (languageCode: string, adminApiContext: AdminApiContext) => Promise<Language>;
|
|
1003
1005
|
declare const getSnippetSetId: (languageCode: string, adminApiContext: AdminApiContext) => Promise<string>;
|
|
1004
|
-
|
|
1006
|
+
type Currency = components['schemas']['Currency'] & {
|
|
1007
|
+
id: string;
|
|
1008
|
+
};
|
|
1009
|
+
declare const getCurrency: (isoCode: string, adminApiContext: AdminApiContext) => Promise<Currency>;
|
|
1005
1010
|
declare const getTaxId: (adminApiContext: AdminApiContext) => Promise<string>;
|
|
1006
1011
|
declare const getPaymentMethodId: (adminApiContext: AdminApiContext, handlerId?: string) => Promise<string>;
|
|
1007
1012
|
declare const getDefaultShippingMethodId: (adminApiContext: AdminApiContext) => Promise<string>;
|
|
@@ -1020,7 +1025,7 @@ type OrderStatus = 'cancel' | 'complete' | 'reopen' | 'process';
|
|
|
1020
1025
|
declare const setOrderStatus: (orderId: string, orderStatus: OrderStatus, adminApiContext: AdminApiContext) => Promise<APIResponse>;
|
|
1021
1026
|
|
|
1022
1027
|
declare const isSaaSInstance: (adminApiContext: AdminApiContext) => Promise<boolean>;
|
|
1023
|
-
declare const isThemeCompiled: (
|
|
1028
|
+
declare const isThemeCompiled: (context: AdminApiContext, storefrontUrl: string) => Promise<boolean>;
|
|
1024
1029
|
|
|
1025
1030
|
declare function createRandomImage(width?: number, height?: number): Image;
|
|
1026
1031
|
|
|
@@ -1060,4 +1065,4 @@ declare const test: _playwright_test.TestType<_playwright_test.PlaywrightTestArg
|
|
|
1060
1065
|
ValidateAccessibility: (pageName: string, assertViolations?: boolean | undefined, createReport?: boolean | undefined, ruleTags?: string[] | undefined, outputDir?: string | undefined) => () => Promise<void>;
|
|
1061
1066
|
}, _playwright_test.PlaywrightWorkerArgs & _playwright_test.PlaywrightWorkerOptions & FixtureTypes>;
|
|
1062
1067
|
|
|
1063
|
-
export { AdminPageObjects, type Category$1 as Category, type CreatedRecord, type Currency, type Customer, type CustomerAddress, type DataServiceOptions, type FixtureTypes, type Media, type Order, type PageObject, type PaymentMethod, type Price, type Product, type ProductPrice, type Promotion, type PropertyGroup, type Rule, type SalesChannel, type Salutation, type ShippingMethod, type SimpleLineItem, type StateMachine, type StateMachineState, StorefrontPageObjects, type SyncApiOperation, type Tag, type Task, TestDataService, createRandomImage, extractIdFromUrl, getCountryId, getCurrency, getDefaultShippingMethodId, getFlowId, getLanguageData, getMediaId, getOrderTransactionId, getPaymentMethodId, getSalutationId, getSnippetSetId, getStateMachineId, getStateMachineStateId, getTaxId, getThemeId, isSaaSInstance, isThemeCompiled, setOrderStatus, test };
|
|
1068
|
+
export { AdminPageObjects, type Category$1 as Category, type CreatedRecord, type Currency$1 as Currency, type Customer, type CustomerAddress, type DataServiceOptions, type FixtureTypes, type Media, type Order, type PageObject, type PaymentMethod, type Price, type Product, type ProductPrice, type Promotion, type PropertyGroup, type Rule, type SalesChannel, type Salutation, type ShippingMethod, type SimpleLineItem, type StateMachine, type StateMachineState, StorefrontPageObjects, type SyncApiOperation, type Tag, type Task, TestDataService, createRandomImage, extractIdFromUrl, getCountryId, getCurrency, getDefaultShippingMethodId, getFlowId, getLanguageData, getMediaId, getOrderTransactionId, getPaymentMethodId, getSalutationId, getSnippetSetId, getStateMachineId, getStateMachineStateId, getTaxId, getThemeId, isSaaSInstance, isThemeCompiled, setOrderStatus, test };
|
package/dist/index.mjs
CHANGED
|
@@ -20,10 +20,10 @@ const getLanguageData = async (languageCode, adminApiContext) => {
|
|
|
20
20
|
}
|
|
21
21
|
});
|
|
22
22
|
const result = await resp.json();
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
if (result.data.length === 0) {
|
|
24
|
+
throw new Error(`Language ${languageCode} not found`);
|
|
25
|
+
}
|
|
26
|
+
return result.data[0];
|
|
27
27
|
};
|
|
28
28
|
const getSnippetSetId = async (languageCode, adminApiContext) => {
|
|
29
29
|
const resp = await adminApiContext.post("search/snippet-set", {
|
|
@@ -51,6 +51,9 @@ const getCurrency = async (isoCode, adminApiContext) => {
|
|
|
51
51
|
}
|
|
52
52
|
});
|
|
53
53
|
const result = await resp.json();
|
|
54
|
+
if (result.data.length === 0) {
|
|
55
|
+
throw new Error(`Currency ${isoCode} not found`);
|
|
56
|
+
}
|
|
54
57
|
return result.data[0];
|
|
55
58
|
};
|
|
56
59
|
const getTaxId = async (adminApiContext) => {
|
|
@@ -200,23 +203,6 @@ const setOrderStatus = async (orderId, orderStatus, adminApiContext) => {
|
|
|
200
203
|
return await adminApiContext.post(`./_action/order/${orderId}/state/${orderStatus}`);
|
|
201
204
|
};
|
|
202
205
|
|
|
203
|
-
const isSaaSInstance = async (adminApiContext) => {
|
|
204
|
-
const instanceFeatures = await adminApiContext.get("./instance/features");
|
|
205
|
-
return instanceFeatures.ok();
|
|
206
|
-
};
|
|
207
|
-
const isThemeCompiled = async (page) => {
|
|
208
|
-
let allCSSFound = false;
|
|
209
|
-
const listener = (request) => {
|
|
210
|
-
if (request.url().includes("all.css")) {
|
|
211
|
-
allCSSFound = true;
|
|
212
|
-
}
|
|
213
|
-
};
|
|
214
|
-
page.on("request", listener);
|
|
215
|
-
await page.goto("./", { waitUntil: "load" });
|
|
216
|
-
page.off("request", listener);
|
|
217
|
-
return allCSSFound;
|
|
218
|
-
};
|
|
219
|
-
|
|
220
206
|
const test$b = test$d.extend({
|
|
221
207
|
SalesChannelBaseConfig: [
|
|
222
208
|
async ({ AdminApiContext }, use) => {
|
|
@@ -234,7 +220,7 @@ const test$b = test$d.extend({
|
|
|
234
220
|
const lang = await requests.language;
|
|
235
221
|
const currency = await requests.currencyEUR;
|
|
236
222
|
await use({
|
|
237
|
-
enGBLocaleId: lang.
|
|
223
|
+
enGBLocaleId: lang.translationCode.id,
|
|
238
224
|
enGBLanguageId: lang.id,
|
|
239
225
|
storefrontTypeId: "8a243080f92e4c719546314b577cf82b",
|
|
240
226
|
eurCurrencyId: currency.id,
|
|
@@ -403,31 +389,6 @@ const test$b = test$d.extend({
|
|
|
403
389
|
});
|
|
404
390
|
},
|
|
405
391
|
{ scope: "worker" }
|
|
406
|
-
],
|
|
407
|
-
DefaultStorefront: [
|
|
408
|
-
async ({ browser, AdminApiContext, DefaultSalesChannel, SalesChannelBaseConfig }, use) => {
|
|
409
|
-
const { id: uuid } = DefaultSalesChannel.salesChannel;
|
|
410
|
-
const isSaasInstance = await isSaaSInstance(AdminApiContext);
|
|
411
|
-
const tmpContext = await browser.newContext({
|
|
412
|
-
baseURL: DefaultSalesChannel.url
|
|
413
|
-
});
|
|
414
|
-
const tmpPage = await tmpContext.newPage();
|
|
415
|
-
if (!await isThemeCompiled(tmpPage)) {
|
|
416
|
-
test$d.slow();
|
|
417
|
-
await AdminApiContext.post(
|
|
418
|
-
`./_action/theme/${SalesChannelBaseConfig.defaultThemeId}/assign/${uuid}`
|
|
419
|
-
);
|
|
420
|
-
if (isSaasInstance) {
|
|
421
|
-
while (!await isThemeCompiled(tmpPage)) {
|
|
422
|
-
await tmpPage.waitForTimeout(2e3);
|
|
423
|
-
}
|
|
424
|
-
}
|
|
425
|
-
}
|
|
426
|
-
await use({
|
|
427
|
-
...DefaultSalesChannel
|
|
428
|
-
});
|
|
429
|
-
},
|
|
430
|
-
{ scope: "worker" }
|
|
431
392
|
]
|
|
432
393
|
});
|
|
433
394
|
|
|
@@ -671,6 +632,22 @@ async function mockApiCalls(page) {
|
|
|
671
632
|
}));
|
|
672
633
|
}
|
|
673
634
|
|
|
635
|
+
const isSaaSInstance = async (adminApiContext) => {
|
|
636
|
+
const instanceFeatures = await adminApiContext.get("./instance/features");
|
|
637
|
+
return instanceFeatures.ok();
|
|
638
|
+
};
|
|
639
|
+
const isThemeCompiled = async (context, storefrontUrl) => {
|
|
640
|
+
const response = await context.get(storefrontUrl);
|
|
641
|
+
const body = (await response.body()).toString();
|
|
642
|
+
const matches = body.match(/.*"(https:\/\/.*all\.css[^"]*)".*/);
|
|
643
|
+
if (matches && matches?.length > 1) {
|
|
644
|
+
const allCssUrl = matches[1];
|
|
645
|
+
const allCssResponse = await context.get(allCssUrl);
|
|
646
|
+
return allCssResponse.status() < 400;
|
|
647
|
+
}
|
|
648
|
+
return false;
|
|
649
|
+
};
|
|
650
|
+
|
|
674
651
|
const test$9 = test$d.extend({
|
|
675
652
|
AdminPage: async ({ IdProvider, AdminApiContext, SalesChannelBaseConfig, browser }, use) => {
|
|
676
653
|
const context = await browser.newContext({
|
|
@@ -721,15 +698,26 @@ const test$9 = test$d.extend({
|
|
|
721
698
|
await use(page);
|
|
722
699
|
await page.close();
|
|
723
700
|
await context.close();
|
|
724
|
-
|
|
725
|
-
expect(cleanupResponse.ok()).toBeTruthy();
|
|
701
|
+
await AdminApiContext.delete(`user/${uuid}`);
|
|
726
702
|
},
|
|
727
|
-
StorefrontPage: async ({
|
|
728
|
-
const { url } =
|
|
703
|
+
StorefrontPage: async ({ DefaultSalesChannel, SalesChannelBaseConfig, browser, AdminApiContext }, use) => {
|
|
704
|
+
const { url, salesChannel } = DefaultSalesChannel;
|
|
729
705
|
const context = await browser.newContext({
|
|
730
706
|
baseURL: url
|
|
731
707
|
});
|
|
732
708
|
const page = await context.newPage();
|
|
709
|
+
const isSaasInstance = await isSaaSInstance(AdminApiContext);
|
|
710
|
+
if (!await isThemeCompiled(AdminApiContext, DefaultSalesChannel.url)) {
|
|
711
|
+
test$d.slow();
|
|
712
|
+
await AdminApiContext.post(
|
|
713
|
+
`./_action/theme/${SalesChannelBaseConfig.defaultThemeId}/assign/${salesChannel.id}`
|
|
714
|
+
);
|
|
715
|
+
if (isSaasInstance) {
|
|
716
|
+
while (!await isThemeCompiled(AdminApiContext, DefaultSalesChannel.url)) {
|
|
717
|
+
await page.waitForTimeout(4e3);
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
}
|
|
733
721
|
await page.goto("./", { waitUntil: "load" });
|
|
734
722
|
await use(page);
|
|
735
723
|
await page.close();
|
|
@@ -1856,23 +1844,22 @@ const test$6 = test$d.extend({
|
|
|
1856
1844
|
{ scope: "worker" }
|
|
1857
1845
|
],
|
|
1858
1846
|
SaaSInstanceSetup: [
|
|
1859
|
-
async ({ AdminApiContext
|
|
1847
|
+
async ({ AdminApiContext: context }, use) => {
|
|
1860
1848
|
const SetupInstance = async function SetupInstance2() {
|
|
1861
|
-
await test$6.skip(!await isSaaSInstance(
|
|
1862
|
-
|
|
1849
|
+
await test$6.skip(!await isSaaSInstance(context), "Skipping SaaS setup, could not detect SaaS instance");
|
|
1850
|
+
expect(context.options.admin_username, "setup requires admin user credentials").toEqual(expect.any(String));
|
|
1851
|
+
expect(context.options.admin_password, "setup requires admin user credentials").toEqual(expect.any(String));
|
|
1852
|
+
const instanceStatusResponse = await context.get("./instance/status");
|
|
1863
1853
|
const instanceStatus = await instanceStatusResponse.json();
|
|
1864
1854
|
await expect(instanceStatus.tags, 'expect instance to have "ci" tag').toContain("ci");
|
|
1865
|
-
|
|
1866
|
-
const
|
|
1867
|
-
await
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
await
|
|
1872
|
-
await
|
|
1873
|
-
await page.getByLabel("Password").fill(AdminApiContext.options.admin_password ?? "shopware");
|
|
1874
|
-
await page.getByRole("button", { name: "Log in" }).click();
|
|
1875
|
-
await page.getByRole("button", { name: "Launch your business" }).click();
|
|
1855
|
+
const currency = await getCurrency("USD", context);
|
|
1856
|
+
const language = await getLanguageData("en-US", context);
|
|
1857
|
+
await context.post(
|
|
1858
|
+
"./_actions/set-default-entities",
|
|
1859
|
+
{ data: { currencyId: currency.id, languageId: language.id } }
|
|
1860
|
+
);
|
|
1861
|
+
const token = await AdminApiContext.authenticateWithUserPassword(context.context, context.options);
|
|
1862
|
+
await context.post("./sbp/request-live-status", { headers: { Authorization: `Bearer ${token}` } });
|
|
1876
1863
|
};
|
|
1877
1864
|
await use(SetupInstance);
|
|
1878
1865
|
},
|