@umbraco/playwright-testhelpers 17.1.0-beta.5 → 17.1.0-beta.7
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/lib/helpers/BaseApiHelper.d.ts +19 -0
- package/dist/lib/helpers/BaseApiHelper.js +87 -0
- package/dist/lib/helpers/BaseApiHelper.js.map +1 -0
- package/dist/lib/helpers/ConstantHelper.d.ts +0 -17
- package/dist/lib/helpers/ConstantHelper.js +0 -17
- package/dist/lib/helpers/ConstantHelper.js.map +1 -1
- package/dist/lib/helpers/ContentRenderUiHelper.js +3 -3
- package/dist/lib/helpers/ContentRenderUiHelper.js.map +1 -1
- package/dist/lib/helpers/ContentUiHelper.js +487 -353
- package/dist/lib/helpers/ContentUiHelper.js.map +1 -1
- package/dist/lib/helpers/CurrentUserProfileUiHelper.js +10 -4
- package/dist/lib/helpers/CurrentUserProfileUiHelper.js.map +1 -1
- package/dist/lib/helpers/DataTypeApiHelper.d.ts +9 -21
- package/dist/lib/helpers/DataTypeApiHelper.js +32 -125
- package/dist/lib/helpers/DataTypeApiHelper.js.map +1 -1
- package/dist/lib/helpers/DataTypeUiHelper.js +332 -193
- package/dist/lib/helpers/DataTypeUiHelper.js.map +1 -1
- package/dist/lib/helpers/DictionaryApiHelper.d.ts +8 -15
- package/dist/lib/helpers/DictionaryApiHelper.js +49 -77
- package/dist/lib/helpers/DictionaryApiHelper.js.map +1 -1
- package/dist/lib/helpers/DictionaryUiHelper.js +23 -17
- package/dist/lib/helpers/DictionaryUiHelper.js.map +1 -1
- package/dist/lib/helpers/DocumentBlueprintApiHelper.d.ts +7 -13
- package/dist/lib/helpers/DocumentBlueprintApiHelper.js +44 -69
- package/dist/lib/helpers/DocumentBlueprintApiHelper.js.map +1 -1
- package/dist/lib/helpers/DocumentBlueprintUiHelper.js +10 -8
- package/dist/lib/helpers/DocumentBlueprintUiHelper.js.map +1 -1
- package/dist/lib/helpers/DocumentTypeApiHelper.d.ts +4 -18
- package/dist/lib/helpers/DocumentTypeApiHelper.js +4 -134
- package/dist/lib/helpers/DocumentTypeApiHelper.js.map +1 -1
- package/dist/lib/helpers/DocumentTypeUiHelper.js +34 -22
- package/dist/lib/helpers/DocumentTypeUiHelper.js.map +1 -1
- package/dist/lib/helpers/ExamineManagementUiHelper.js +6 -5
- package/dist/lib/helpers/ExamineManagementUiHelper.js.map +1 -1
- package/dist/lib/helpers/FormsUiHelper.js +159 -119
- package/dist/lib/helpers/FormsUiHelper.js.map +1 -1
- package/dist/lib/helpers/HealthCheckUiHelper.js +7 -7
- package/dist/lib/helpers/HealthCheckUiHelper.js.map +1 -1
- package/dist/lib/helpers/LanguageApiHelper.d.ts +10 -12
- package/dist/lib/helpers/LanguageApiHelper.js +34 -35
- package/dist/lib/helpers/LanguageApiHelper.js.map +1 -1
- package/dist/lib/helpers/LanguageUiHelper.js +19 -16
- package/dist/lib/helpers/LanguageUiHelper.js.map +1 -1
- package/dist/lib/helpers/LogViewerUiHelper.js +31 -22
- package/dist/lib/helpers/LogViewerUiHelper.js.map +1 -1
- package/dist/lib/helpers/LoginUiHelper.js +7 -4
- package/dist/lib/helpers/LoginUiHelper.js.map +1 -1
- package/dist/lib/helpers/MediaTypeApiHelper.d.ts +4 -18
- package/dist/lib/helpers/MediaTypeApiHelper.js +4 -134
- package/dist/lib/helpers/MediaTypeApiHelper.js.map +1 -1
- package/dist/lib/helpers/MediaTypeUiHelper.js +17 -11
- package/dist/lib/helpers/MediaTypeUiHelper.js.map +1 -1
- package/dist/lib/helpers/MediaUiHelper.js +45 -36
- package/dist/lib/helpers/MediaUiHelper.js.map +1 -1
- package/dist/lib/helpers/MemberApiHelper.d.ts +4 -12
- package/dist/lib/helpers/MemberApiHelper.js +6 -54
- package/dist/lib/helpers/MemberApiHelper.js.map +1 -1
- package/dist/lib/helpers/MemberGroupApiHelper.d.ts +6 -11
- package/dist/lib/helpers/MemberGroupApiHelper.js +20 -35
- package/dist/lib/helpers/MemberGroupApiHelper.js.map +1 -1
- package/dist/lib/helpers/MemberGroupUiHelper.js +16 -13
- package/dist/lib/helpers/MemberGroupUiHelper.js.map +1 -1
- package/dist/lib/helpers/MemberTypeApiHelper.d.ts +5 -12
- package/dist/lib/helpers/MemberTypeApiHelper.js +16 -49
- package/dist/lib/helpers/MemberTypeApiHelper.js.map +1 -1
- package/dist/lib/helpers/MemberTypeUiHelper.js +3 -2
- package/dist/lib/helpers/MemberTypeUiHelper.js.map +1 -1
- package/dist/lib/helpers/MemberUiHelper.js +43 -25
- package/dist/lib/helpers/MemberUiHelper.js.map +1 -1
- package/dist/lib/helpers/ModelsBuilderUiHelper.js +3 -2
- package/dist/lib/helpers/ModelsBuilderUiHelper.js.map +1 -1
- package/dist/lib/helpers/PackageApiHelper.d.ts +5 -4
- package/dist/lib/helpers/PackageApiHelper.js +47 -75
- package/dist/lib/helpers/PackageApiHelper.js.map +1 -1
- package/dist/lib/helpers/PackageUiHelper.js +36 -30
- package/dist/lib/helpers/PackageUiHelper.js.map +1 -1
- package/dist/lib/helpers/PartialViewApiHelper.d.ts +5 -20
- package/dist/lib/helpers/PartialViewApiHelper.js +12 -146
- package/dist/lib/helpers/PartialViewApiHelper.js.map +1 -1
- package/dist/lib/helpers/PartialViewUiHelper.js +17 -14
- package/dist/lib/helpers/PartialViewUiHelper.js.map +1 -1
- package/dist/lib/helpers/PathBasedTreeApiHelper.d.ts +32 -0
- package/dist/lib/helpers/PathBasedTreeApiHelper.js +164 -0
- package/dist/lib/helpers/PathBasedTreeApiHelper.js.map +1 -0
- package/dist/lib/helpers/ProfilingUiHelper.js +5 -3
- package/dist/lib/helpers/ProfilingUiHelper.js.map +1 -1
- package/dist/lib/helpers/PublishedStatusUiHelper.js +8 -7
- package/dist/lib/helpers/PublishedStatusUiHelper.js.map +1 -1
- package/dist/lib/helpers/RedirectManagementUiHelper.js +12 -7
- package/dist/lib/helpers/RedirectManagementUiHelper.js.map +1 -1
- package/dist/lib/helpers/RelationTypeApiHelper.d.ts +7 -12
- package/dist/lib/helpers/RelationTypeApiHelper.js +28 -49
- package/dist/lib/helpers/RelationTypeApiHelper.js.map +1 -1
- package/dist/lib/helpers/RelationTypeUiHelper.js +16 -13
- package/dist/lib/helpers/RelationTypeUiHelper.js.map +1 -1
- package/dist/lib/helpers/ScriptApiHelper.d.ts +6 -22
- package/dist/lib/helpers/ScriptApiHelper.js +12 -165
- package/dist/lib/helpers/ScriptApiHelper.js.map +1 -1
- package/dist/lib/helpers/ScriptUiHelper.js +13 -9
- package/dist/lib/helpers/ScriptUiHelper.js.map +1 -1
- package/dist/lib/helpers/StylesheetApiHelper.d.ts +5 -20
- package/dist/lib/helpers/StylesheetApiHelper.js +13 -154
- package/dist/lib/helpers/StylesheetApiHelper.js.map +1 -1
- package/dist/lib/helpers/StylesheetUiHelper.js +14 -9
- package/dist/lib/helpers/StylesheetUiHelper.js.map +1 -1
- package/dist/lib/helpers/TelemetryDataUiHelper.js +3 -2
- package/dist/lib/helpers/TelemetryDataUiHelper.js.map +1 -1
- package/dist/lib/helpers/TemplateApiHelper.d.ts +8 -15
- package/dist/lib/helpers/TemplateApiHelper.js +51 -83
- package/dist/lib/helpers/TemplateApiHelper.js.map +1 -1
- package/dist/lib/helpers/TemplateUiHelper.js +25 -19
- package/dist/lib/helpers/TemplateUiHelper.js.map +1 -1
- package/dist/lib/helpers/TreeApiHelper.d.ts +15 -0
- package/dist/lib/helpers/TreeApiHelper.js +116 -0
- package/dist/lib/helpers/TreeApiHelper.js.map +1 -0
- package/dist/lib/helpers/UiBaseLocators.d.ts +228 -230
- package/dist/lib/helpers/UiBaseLocators.js +871 -832
- package/dist/lib/helpers/UiBaseLocators.js.map +1 -1
- package/dist/lib/helpers/UserGroupApiHelper.d.ts +3 -13
- package/dist/lib/helpers/UserGroupApiHelper.js +3 -69
- package/dist/lib/helpers/UserGroupApiHelper.js.map +1 -1
- package/dist/lib/helpers/UserGroupUiHelper.js +49 -32
- package/dist/lib/helpers/UserGroupUiHelper.js.map +1 -1
- package/dist/lib/helpers/UserUiHelper.js +46 -43
- package/dist/lib/helpers/UserUiHelper.js.map +1 -1
- package/dist/lib/helpers/VariantBasedApiHelper.d.ts +23 -0
- package/dist/lib/helpers/VariantBasedApiHelper.js +81 -0
- package/dist/lib/helpers/VariantBasedApiHelper.js.map +1 -0
- package/dist/lib/helpers/WebhookApiHelper.d.ts +1 -0
- package/dist/lib/helpers/WebhookApiHelper.js +10 -11
- package/dist/lib/helpers/WebhookApiHelper.js.map +1 -1
- package/dist/lib/helpers/WebhookUiHelper.js +27 -11
- package/dist/lib/helpers/WebhookUiHelper.js.map +1 -1
- package/dist/lib/helpers/WelcomeDashboardUiHelper.js +1 -1
- package/dist/lib/helpers/WelcomeDashboardUiHelper.js.map +1 -1
- package/dist/lib/helpers/differentAppSettingsHelpers/ExternalLoginUiHelpers.js +9 -4
- package/dist/lib/helpers/differentAppSettingsHelpers/ExternalLoginUiHelpers.js.map +1 -1
- package/dist/lib/helpers/differentAppSettingsHelpers/InstallUiHelper.js +10 -5
- package/dist/lib/helpers/differentAppSettingsHelpers/InstallUiHelper.js.map +1 -1
- package/dist/lib/helpers/index.d.ts +4 -1
- package/dist/lib/helpers/index.js +9 -3
- package/dist/lib/helpers/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/lib/helpers/BasePage.d.ts +0 -449
- package/dist/lib/helpers/BasePage.js +0 -547
- package/dist/lib/helpers/BasePage.js.map +0 -1
|
@@ -1,67 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MemberTypeApiHelper = void 0;
|
|
4
|
+
const TreeApiHelper_1 = require("./TreeApiHelper");
|
|
4
5
|
const AliasHelper_1 = require("./AliasHelper");
|
|
5
6
|
const json_models_builders_1 = require("@umbraco/json-models-builders");
|
|
6
|
-
class MemberTypeApiHelper {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
7
|
+
class MemberTypeApiHelper extends TreeApiHelper_1.TreeApiHelper {
|
|
8
|
+
resourcePath = 'member-type';
|
|
9
|
+
treePath = 'tree/member-type';
|
|
10
|
+
// Override ensureNameNotExists - MemberType has no folders
|
|
11
11
|
async ensureNameNotExists(name) {
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
for (const
|
|
15
|
-
if (
|
|
16
|
-
return await this.delete(
|
|
12
|
+
const rootItems = await this.getAllAtRoot();
|
|
13
|
+
const jsonItems = await rootItems.json();
|
|
14
|
+
for (const item of jsonItems.items) {
|
|
15
|
+
if (item.name === name) {
|
|
16
|
+
return await this.delete(item.id);
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
return null;
|
|
20
20
|
}
|
|
21
|
-
|
|
22
|
-
if (memberType == null) {
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
const response = await this.api.post(this.api.baseUrl + '/umbraco/management/api/v1/member-type', memberType);
|
|
26
|
-
return response.headers().location.split("v1/member-type/").pop();
|
|
27
|
-
}
|
|
28
|
-
async update(id, updatedMemberType) {
|
|
29
|
-
if (updatedMemberType == null) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
return await this.api.put(this.api.baseUrl + '/umbraco/management/api/v1/member-type/' + id, updatedMemberType);
|
|
33
|
-
}
|
|
34
|
-
async get(id) {
|
|
35
|
-
const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/member-type/' + id);
|
|
36
|
-
return await response.json();
|
|
37
|
-
}
|
|
38
|
-
async delete(id) {
|
|
39
|
-
if (id == null) {
|
|
40
|
-
return;
|
|
41
|
-
}
|
|
42
|
-
const response = await this.api.delete(this.api.baseUrl + '/umbraco/management/api/v1/member-type/' + id);
|
|
43
|
-
return response.status();
|
|
44
|
-
}
|
|
45
|
-
async getAllAtRoot() {
|
|
46
|
-
return await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/tree/member-type/root?skip=0&take=10000');
|
|
47
|
-
}
|
|
21
|
+
// Override getByName - MemberType has no folders
|
|
48
22
|
async getByName(name) {
|
|
49
|
-
const
|
|
50
|
-
const
|
|
51
|
-
for (const
|
|
52
|
-
if (
|
|
53
|
-
return this.get(
|
|
23
|
+
const rootItems = await this.getAllAtRoot();
|
|
24
|
+
const jsonItems = await rootItems.json();
|
|
25
|
+
for (const item of jsonItems.items) {
|
|
26
|
+
if (item.name === name) {
|
|
27
|
+
return this.get(item.id);
|
|
54
28
|
}
|
|
55
29
|
}
|
|
56
30
|
return false;
|
|
57
31
|
}
|
|
58
|
-
async doesExist(id) {
|
|
59
|
-
const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/member-type/' + id);
|
|
60
|
-
return response.status() === 200;
|
|
61
|
-
}
|
|
62
|
-
async doesNameExist(name) {
|
|
63
|
-
return await this.getByName(name);
|
|
64
|
-
}
|
|
65
32
|
async createDefaultMemberType(memberTypeName) {
|
|
66
33
|
await this.ensureNameNotExists(memberTypeName);
|
|
67
34
|
const memberType = new json_models_builders_1.MemberTypeBuilder()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemberTypeApiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/MemberTypeApiHelper.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"MemberTypeApiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/MemberTypeApiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {TreeApiHelper} from \"./TreeApiHelper\";\nimport {AliasHelper} from \"./AliasHelper\";\nimport {MemberTypeBuilder} from \"@umbraco/json-models-builders\";\n\nexport class MemberTypeApiHelper extends TreeApiHelper {\n protected resourcePath = 'member-type';\n protected treePath = 'tree/member-type';\n\n // Override ensureNameNotExists - MemberType has no folders\n async ensureNameNotExists(name: string): Promise<any> {\n const rootItems = await this.getAllAtRoot();\n const jsonItems = await rootItems.json();\n\n for (const item of jsonItems.items) {\n if (item.name === name) {\n return await this.delete(item.id);\n }\n }\n return null;\n }\n\n // Override getByName - MemberType has no folders\n async getByName(name: string): Promise<any> {\n const rootItems = await this.getAllAtRoot();\n const jsonItems = await rootItems.json();\n\n for (const item of jsonItems.items) {\n if (item.name === name) {\n return this.get(item.id);\n }\n }\n return false;\n }\n\n async createDefaultMemberType(memberTypeName: string) {\n await this.ensureNameNotExists(memberTypeName);\n\n const memberType = new MemberTypeBuilder()\n .withName(memberTypeName)\n .withAlias(AliasHelper.toAlias(memberTypeName))\n .withAllowedAsRoot(true)\n .build();\n \n return await this.create(memberType);\n }\n\n async createMemberTypeWithPropertyEditor(memberTypeName: string, dataTypeName: string, dataTypeId: string, groupName: string = \"GroupTest\")\n {\n const crypto = require('crypto');\n const containerId = crypto.randomUUID();\n\n const memberType = new MemberTypeBuilder()\n .withName(memberTypeName)\n .withAlias(AliasHelper.toAlias(memberTypeName))\n .addContainer()\n .withName(groupName)\n .withId(containerId)\n .withType(\"Group\")\n .done()\n .addProperty()\n .withContainerId(containerId)\n .withAlias(AliasHelper.toAlias(dataTypeName))\n .withName(dataTypeName)\n .withDataTypeId(dataTypeId)\n .done()\n .build();\n return await this.create(memberType);\n }\n\n async createMemberTypeWithTwoPropertyEditors(memberTypeName: string, dataTypeNameOne: string, dataTypeIdOne: string, dataTypeNameTwo: string, dataTypeIdTwo: string, groupName: string = \"GroupTest\")\n {\n const crypto = require('crypto');\n const containerId = crypto.randomUUID();\n\n const memberType = new MemberTypeBuilder()\n .withName(memberTypeName)\n .withAlias(AliasHelper.toAlias(memberTypeName))\n .addContainer()\n .withName(groupName)\n .withId(containerId)\n .withType(\"Group\")\n .done()\n .addProperty()\n .withContainerId(containerId)\n .withAlias(AliasHelper.toAlias(dataTypeNameOne))\n .withName(dataTypeNameOne)\n .withDataTypeId(dataTypeIdOne)\n .done()\n .addProperty()\n .withContainerId(containerId)\n .withAlias(AliasHelper.toAlias(dataTypeNameTwo))\n .withName(dataTypeNameTwo)\n .withDataTypeId(dataTypeIdTwo)\n .done()\n .build();\n return await this.create(memberType);\n }\n}"]}
|
|
@@ -21,10 +21,11 @@ class MemberTypeUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
21
21
|
}
|
|
22
22
|
async goToMemberType(memberTypeName) {
|
|
23
23
|
await this.clickRootFolderCaretButton();
|
|
24
|
-
await this.
|
|
24
|
+
await this.page.getByLabel(memberTypeName).click();
|
|
25
25
|
}
|
|
26
26
|
async enterMemberTypeName(name) {
|
|
27
|
-
await this.
|
|
27
|
+
await this.memberTypeNameTxt.clear();
|
|
28
|
+
await this.memberTypeNameTxt.fill(name);
|
|
28
29
|
}
|
|
29
30
|
async enterDescriptionForPropertyEditorWithName(propertyEditorName, description) {
|
|
30
31
|
await this.memberTypeEditPropertyWorkspace.filter({ hasText: propertyEditorName }).getByLabel('description').fill(description);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemberTypeUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/MemberTypeUiHelper.ts"],"names":[],"mappings":";;;AAAA,qDAAgD;AAGhD,MAAa,kBAAmB,SAAQ,+BAAc;IACnC,iBAAiB,CAAU;IAC3B,+BAA+B,CAAU;IAE1D,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;QAChE,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC;IACtG,CAAC;IAED,KAAK,CAAC,6BAA6B,CAAC,IAAY;QAC9C,MAAM,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,MAAM,IAAI,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,0BAA0B;QAC9B,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,cAAsB;QACzC,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;QACxC,MAAM,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"MemberTypeUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/MemberTypeUiHelper.ts"],"names":[],"mappings":";;;AAAA,qDAAgD;AAGhD,MAAa,kBAAmB,SAAQ,+BAAc;IACnC,iBAAiB,CAAU;IAC3B,+BAA+B,CAAU;IAE1D,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;QAChE,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC;IACtG,CAAC;IAED,KAAK,CAAC,6BAA6B,CAAC,IAAY;QAC9C,MAAM,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,MAAM,IAAI,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,0BAA0B;QAC9B,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,cAAsB;QACzC,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;QACxC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,IAAY;QACpC,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QACrC,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,yCAAyC,CAAC,kBAA0B,EAAE,WAAmB;QAC7F,MAAM,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,EAAC,OAAO,EAAE,kBAAkB,EAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/H,CAAC;CACF;AAnCD,gDAmCC","sourcesContent":["import {UiBaseLocators} from \"./UiBaseLocators\";\nimport {Locator, Page} from \"@playwright/test\";\n\nexport class MemberTypeUiHelper extends UiBaseLocators {\n private readonly memberTypeNameTxt: Locator;\n private readonly memberTypeEditPropertyWorkspace: Locator;\n\n constructor(page: Page) {\n super(page);\n this.memberTypeNameTxt = page.getByLabel('name', {exact: true});\n this.memberTypeEditPropertyWorkspace = page.locator('umb-member-type-workspace-view-edit-property');\n }\n\n async clickActionsMenuForMemberType(name: string) {\n await this.clickActionsMenuForName(name);\n }\n\n async clickActionsMenuAtRoot() {\n await this.clickActionsMenuForMemberType(\"Member Types\");\n }\n\n async clickRootFolderCaretButton() {\n await this.openCaretButtonForName(\"Member Types\");\n }\n\n async goToMemberType(memberTypeName: string) {\n await this.clickRootFolderCaretButton();\n await this.page.getByLabel(memberTypeName).click();\n }\n\n async enterMemberTypeName(name: string) {\n await this.memberTypeNameTxt.clear();\n await this.memberTypeNameTxt.fill(name);\n }\n\n async enterDescriptionForPropertyEditorWithName(propertyEditorName: string, description: string) {\n await this.memberTypeEditPropertyWorkspace.filter({hasText: propertyEditorName}).getByLabel('description').fill(description);\n }\n}"]}
|
|
@@ -49,88 +49,106 @@ class MemberUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
49
49
|
this.memberTableCollectionRow = page.locator('umb-member-table-collection-view').locator('uui-table-row');
|
|
50
50
|
}
|
|
51
51
|
async clickMembersTab() {
|
|
52
|
-
await this.click(
|
|
52
|
+
await this.membersTab.click();
|
|
53
53
|
}
|
|
54
54
|
async clickDetailsTab() {
|
|
55
|
-
await
|
|
55
|
+
await (0, test_1.expect)(this.detailsTab).toBeVisible();
|
|
56
|
+
await this.detailsTab.click();
|
|
56
57
|
}
|
|
57
58
|
async clickMemberLinkByName(memberName) {
|
|
58
|
-
await this.
|
|
59
|
+
await this.page.getByRole('link', { name: memberName }).click();
|
|
59
60
|
}
|
|
60
61
|
async isMemberWithNameVisible(memberName, isVisible = true) {
|
|
61
|
-
await
|
|
62
|
+
await (0, test_1.expect)(this.memberTableCollectionRow.getByText(memberName, { exact: true })).toBeVisible({ visible: isVisible });
|
|
62
63
|
}
|
|
63
64
|
async clickMembersSidebarButton() {
|
|
64
|
-
await
|
|
65
|
+
await (0, test_1.expect)(this.membersSidebarBtn).toBeVisible();
|
|
66
|
+
await this.membersSidebarBtn.click();
|
|
65
67
|
}
|
|
66
68
|
async enterSearchKeyword(keyword) {
|
|
67
|
-
await
|
|
69
|
+
await (0, test_1.expect)(this.searchTxt).toBeVisible();
|
|
70
|
+
await this.searchTxt.clear();
|
|
71
|
+
await this.searchTxt.fill(keyword);
|
|
68
72
|
}
|
|
69
73
|
async enterMemberName(name) {
|
|
70
|
-
await
|
|
74
|
+
await (0, test_1.expect)(this.memberNameTxt).toBeVisible();
|
|
75
|
+
await this.memberNameTxt.clear();
|
|
76
|
+
await this.memberNameTxt.fill(name);
|
|
71
77
|
}
|
|
72
78
|
async enterComments(comment) {
|
|
73
|
-
await
|
|
79
|
+
await (0, test_1.expect)(this.commentsTxt).toBeVisible();
|
|
80
|
+
await this.commentsTxt.clear();
|
|
81
|
+
await this.commentsTxt.fill(comment);
|
|
74
82
|
}
|
|
75
83
|
async enterUsername(username) {
|
|
76
|
-
await
|
|
84
|
+
await (0, test_1.expect)(this.usernameTxt).toBeVisible();
|
|
85
|
+
await this.usernameTxt.clear();
|
|
86
|
+
await this.usernameTxt.fill(username);
|
|
77
87
|
}
|
|
78
88
|
async enterEmail(email) {
|
|
79
|
-
await
|
|
89
|
+
await (0, test_1.expect)(this.emailTxt).toBeVisible();
|
|
90
|
+
await this.emailTxt.clear();
|
|
91
|
+
await this.emailTxt.fill(email);
|
|
80
92
|
}
|
|
81
93
|
async enterPassword(password) {
|
|
82
|
-
await this.
|
|
94
|
+
await this.passwordTxt.clear();
|
|
95
|
+
await this.passwordTxt.fill(password);
|
|
83
96
|
}
|
|
84
97
|
async enterConfirmPassword(password) {
|
|
85
|
-
await this.
|
|
98
|
+
await this.confirmPasswordTxt.clear();
|
|
99
|
+
await this.confirmPasswordTxt.fill(password);
|
|
86
100
|
}
|
|
87
101
|
async enterConfirmNewPassword(password) {
|
|
88
|
-
await this.
|
|
102
|
+
await this.confirmNewPasswordTxt.clear();
|
|
103
|
+
await this.confirmNewPasswordTxt.fill(password);
|
|
89
104
|
}
|
|
90
105
|
async chooseMemberGroup(memberGroupName) {
|
|
91
106
|
await this.clickChooseButton();
|
|
92
|
-
await this.
|
|
107
|
+
await this.page.getByText(memberGroupName, { exact: true }).click();
|
|
93
108
|
await this.clickChooseContainerButton();
|
|
94
109
|
}
|
|
95
110
|
async doesMemberInfoHaveValue(infoName, value) {
|
|
96
111
|
return (0, test_1.expect)(this.memberInfoItems.filter({ hasText: infoName }).locator('span')).toHaveText(value);
|
|
97
112
|
}
|
|
98
113
|
async clickApprovedToggle() {
|
|
99
|
-
await this.click(
|
|
114
|
+
await this.approvedToggle.click();
|
|
100
115
|
}
|
|
101
116
|
async clickLockedOutToggle() {
|
|
102
|
-
await this.click(
|
|
117
|
+
await this.lockedOutToggle.click();
|
|
103
118
|
}
|
|
104
119
|
async clickTwoFactorAuthenticationToggle() {
|
|
105
|
-
await this.click(
|
|
120
|
+
await this.twoFactorAuthenticationToggle.click();
|
|
106
121
|
}
|
|
107
122
|
async clickChangePasswordButton() {
|
|
108
|
-
await this.click(
|
|
123
|
+
await this.changePasswordBtn.click();
|
|
109
124
|
}
|
|
110
125
|
async clickRemoveMemberGroupByName(memberGroupName) {
|
|
111
|
-
await this.
|
|
126
|
+
await this.page.locator('[name="' + memberGroupName + '"]').getByLabel('Remove').click();
|
|
112
127
|
}
|
|
113
128
|
async enterNewPassword(password) {
|
|
114
|
-
await this.
|
|
129
|
+
await this.newPasswordTxt.clear();
|
|
130
|
+
await this.newPasswordTxt.fill(password);
|
|
115
131
|
}
|
|
116
132
|
async clickMembersMenu() {
|
|
117
|
-
await this.click(
|
|
133
|
+
await this.membersMenu.click();
|
|
118
134
|
}
|
|
119
135
|
async waitForMemberToBeCreated() {
|
|
120
|
-
await this.waitForLoadState();
|
|
136
|
+
await this.page.waitForLoadState();
|
|
121
137
|
}
|
|
122
138
|
async waitForMemberToBeDeleted() {
|
|
123
|
-
await this.waitForLoadState();
|
|
139
|
+
await this.page.waitForLoadState();
|
|
124
140
|
}
|
|
125
141
|
async goToMembers() {
|
|
126
142
|
await this.goToSection(ConstantHelper_1.ConstantHelper.sections.members);
|
|
127
143
|
await this.clickMembersMenu();
|
|
128
144
|
}
|
|
129
145
|
async clickInfoTab() {
|
|
130
|
-
await
|
|
146
|
+
await (0, test_1.expect)(this.infoTab).toBeVisible();
|
|
147
|
+
await this.infoTab.click();
|
|
131
148
|
}
|
|
132
149
|
async clickCreateMembersButton() {
|
|
133
|
-
await
|
|
150
|
+
await (0, test_1.expect)(this.membersCreateBtn).toBeVisible();
|
|
151
|
+
await this.membersCreateBtn.click();
|
|
134
152
|
}
|
|
135
153
|
}
|
|
136
154
|
exports.MemberUiHelper = MemberUiHelper;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemberUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/MemberUiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {Page, Locator, expect} from \"@playwright/test\";\nimport {UiBaseLocators} from \"./UiBaseLocators\";\nimport {ConstantHelper} from \"./ConstantHelper\";\n\nexport class MemberUiHelper extends UiBaseLocators {\n private readonly membersTab: Locator;\n private readonly searchTxt: Locator;\n private readonly memberNameTxt: Locator;\n private readonly commentsTxt: Locator;\n private readonly detailsTab: Locator;\n private readonly usernameTxt: Locator;\n private readonly emailTxt: Locator;\n private readonly passwordTxt: Locator;\n private readonly confirmNewPasswordTxt: Locator;\n private readonly approvedToggle: Locator;\n private readonly lockedOutToggle: Locator;\n private readonly twoFactorAuthenticationToggle: Locator;\n private readonly memberInfoItems: Locator;\n private readonly changePasswordBtn: Locator;\n private readonly membersMenu: Locator;\n private readonly infoTab: Locator;\n private readonly membersCreateBtn: Locator;\n private readonly membersSidebar: Locator;\n private readonly membersSidebarBtn: Locator;\n private readonly memberTableCollectionRow: Locator;\n\n constructor(page: Page) {\n super(page);\n this.membersTab = page.locator('uui-tab[label=\"Members\"]');\n this.searchTxt = page.locator('#input-search');\n this.memberNameTxt = page.locator('#name-input #input');\n this.commentsTxt = page.locator('umb-content-workspace-view-edit-tab').locator('umb-property').filter({hasText: 'Comments'}).locator('#textarea');\n this.detailsTab = page.locator('uui-tab').filter({hasText: 'Details'}).locator('svg');\n this.usernameTxt = page.getByLabel('Username', {exact: true});\n this.emailTxt = page.getByLabel('Email', {exact: true});\n this.passwordTxt = page.getByLabel('Enter your new password', {exact: true});\n this.confirmNewPasswordTxt = page.getByLabel('Confirm new password', {exact: true});\n this.approvedToggle = page.locator('[label=\"Approved\"] #toggle');\n this.lockedOutToggle = page.locator('[label=\"Locked out\"] #toggle');\n this.twoFactorAuthenticationToggle = page.locator('[label=\"Two-Factor authentication\"] #toggle');\n this.memberInfoItems = page.locator('umb-stack > div');\n this.changePasswordBtn = page.getByLabel('Change password', {exact: true});\n this.membersMenu = page.locator('umb-menu').getByLabel('Members', {exact: true});\n this.infoTab = page.locator('uui-tab').filter({hasText: 'Info'}).locator('svg');\n this.membersCreateBtn = page.locator('umb-create-member-collection-action').getByLabel('Create', {exact: true});\n this.membersSidebar = page.getByTestId('section-sidebar:Umb.SectionSidebarApp.Menu.MemberManagement');\n this.membersSidebarBtn = this.membersSidebar.locator('uui-menu-item').filter({hasText: 'Members'});\n this.memberTableCollectionRow = page.locator('umb-member-table-collection-view').locator('uui-table-row');\n }\n\n async clickMembersTab() {\n await this.click(this.membersTab);\n }\n\n async clickDetailsTab() {\n await this.click(this.detailsTab);\n }\n\n async clickMemberLinkByName(memberName: string) {\n await this.click(this.page.getByRole('link', {name: memberName}));\n }\n\n async isMemberWithNameVisible(memberName: string, isVisible: boolean = true) {\n await this.isVisible(this.memberTableCollectionRow.getByText(memberName, {exact: true}), isVisible);\n }\n\n async clickMembersSidebarButton() {\n await this.click(this.membersSidebarBtn);\n }\n\n async enterSearchKeyword(keyword: string) {\n await this.enterText(this.searchTxt, keyword);\n }\n\n async enterMemberName(name: string) {\n await this.enterText(this.memberNameTxt, name);\n }\n\n async enterComments(comment: string) {\n await this.enterText(this.commentsTxt, comment);\n }\n\n async enterUsername(username: string) {\n await this.enterText(this.usernameTxt, username);\n }\n\n async enterEmail(email: string) {\n await this.enterText(this.emailTxt, email);\n }\n\n async enterPassword(password: string) {\n await this.enterText(this.passwordTxt, password);\n }\n\n async enterConfirmPassword(password: string) {\n await this.enterText(this.confirmPasswordTxt, password);\n }\n\n async enterConfirmNewPassword(password: string) {\n await this.enterText(this.confirmNewPasswordTxt, password);\n }\n\n async chooseMemberGroup(memberGroupName: string) {\n await this.clickChooseButton();\n await this.click(this.page.getByText(memberGroupName, {exact: true}));\n await this.clickChooseContainerButton();\n }\n\n async doesMemberInfoHaveValue(infoName: string, value: string) {\n return expect(this.memberInfoItems.filter({hasText: infoName}).locator('span')).toHaveText(value);\n }\n\n async clickApprovedToggle() {\n await this.click(this.approvedToggle);\n }\n\n async clickLockedOutToggle() {\n await this.click(this.lockedOutToggle);\n }\n\n async clickTwoFactorAuthenticationToggle() {\n await this.click(this.twoFactorAuthenticationToggle);\n }\n\n async clickChangePasswordButton() {\n await this.click(this.changePasswordBtn);\n }\n\n async clickRemoveMemberGroupByName(memberGroupName: string) {\n await this.click(this.page.locator(`[name=\"${memberGroupName}\"]`).getByLabel('Remove'));\n }\n\n async enterNewPassword(password: string) {\n await this.enterText(this.newPasswordTxt, password);\n }\n\n async clickMembersMenu() {\n await this.click(this.membersMenu);\n }\n\n async waitForMemberToBeCreated(){\n await this.waitForLoadState();\n }\n\n async waitForMemberToBeDeleted() {\n await this.waitForLoadState();\n }\n\n async goToMembers() {\n await this.goToSection(ConstantHelper.sections.members);\n await this.clickMembersMenu();\n }\n\n async clickInfoTab() {\n await this.click(this.infoTab);\n }\n\n async clickCreateMembersButton() {\n await this.click(this.membersCreateBtn);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"MemberUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/MemberUiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {Page, Locator, expect} from \"@playwright/test\";\nimport {UiBaseLocators} from \"./UiBaseLocators\";\nimport {ConstantHelper} from \"./ConstantHelper\";\n\nexport class MemberUiHelper extends UiBaseLocators {\n private readonly membersTab: Locator;\n private readonly searchTxt: Locator;\n private readonly memberNameTxt: Locator;\n private readonly commentsTxt: Locator;\n private readonly detailsTab: Locator;\n private readonly usernameTxt: Locator;\n private readonly emailTxt: Locator;\n private readonly passwordTxt: Locator;\n private readonly confirmNewPasswordTxt: Locator;\n private readonly approvedToggle: Locator;\n private readonly lockedOutToggle: Locator;\n private readonly twoFactorAuthenticationToggle: Locator;\n private readonly memberInfoItems: Locator;\n private readonly changePasswordBtn: Locator;\n private readonly membersMenu: Locator;\n private readonly infoTab: Locator;\n private readonly membersCreateBtn: Locator;\n private readonly membersSidebar: Locator;\n private readonly membersSidebarBtn: Locator;\n private readonly memberTableCollectionRow: Locator;\n\n constructor(page: Page) {\n super(page);\n this.membersTab = page.locator('uui-tab[label=\"Members\"]');\n this.searchTxt = page.locator('#input-search');\n this.memberNameTxt = page.locator('#name-input #input');\n this.commentsTxt = page.locator('umb-content-workspace-view-edit-tab').locator('umb-property').filter({hasText: 'Comments'}).locator('#textarea');\n this.detailsTab = page.locator('uui-tab').filter({hasText: 'Details'}).locator('svg');\n this.usernameTxt = page.getByLabel('Username', {exact: true});\n this.emailTxt = page.getByLabel('Email', {exact: true});\n this.passwordTxt = page.getByLabel('Enter your new password', {exact: true});\n this.confirmNewPasswordTxt = page.getByLabel('Confirm new password', {exact: true});\n this.approvedToggle = page.locator('[label=\"Approved\"] #toggle');\n this.lockedOutToggle = page.locator('[label=\"Locked out\"] #toggle');\n this.twoFactorAuthenticationToggle = page.locator('[label=\"Two-Factor authentication\"] #toggle');\n this.memberInfoItems = page.locator('umb-stack > div');\n this.changePasswordBtn = page.getByLabel('Change password', {exact: true});\n this.membersMenu = page.locator('umb-menu').getByLabel('Members', {exact: true});\n this.infoTab = page.locator('uui-tab').filter({hasText: 'Info'}).locator('svg');\n this.membersCreateBtn = page.locator('umb-create-member-collection-action').getByLabel('Create', {exact: true});\n this.membersSidebar = page.getByTestId('section-sidebar:Umb.SectionSidebarApp.Menu.MemberManagement');\n this.membersSidebarBtn = this.membersSidebar.locator('uui-menu-item').filter({hasText: 'Members'});\n this.memberTableCollectionRow = page.locator('umb-member-table-collection-view').locator('uui-table-row');\n }\n\n async clickMembersTab() {\n await this.membersTab.click();\n }\n\n async clickDetailsTab() {\n await expect(this.detailsTab).toBeVisible();\n await this.detailsTab.click();\n }\n\n async clickMemberLinkByName(memberName: string) {\n await this.page.getByRole('link', {name: memberName}).click();\n }\n\n async isMemberWithNameVisible(memberName: string, isVisible: boolean = true) {\n await expect(this.memberTableCollectionRow.getByText(memberName, {exact: true})).toBeVisible({visible: isVisible});\n }\n \n async clickMembersSidebarButton() {\n await expect(this.membersSidebarBtn).toBeVisible();\n await this.membersSidebarBtn.click();\n }\n \n async enterSearchKeyword(keyword: string) {\n await expect(this.searchTxt).toBeVisible();\n await this.searchTxt.clear();\n await this.searchTxt.fill(keyword);\n }\n\n async enterMemberName(name: string) {\n await expect(this.memberNameTxt).toBeVisible();\n await this.memberNameTxt.clear();\n await this.memberNameTxt.fill(name);\n }\n\n async enterComments(comment: string) {\n await expect(this.commentsTxt).toBeVisible();\n await this.commentsTxt.clear();\n await this.commentsTxt.fill(comment);\n }\n\n async enterUsername(username: string) {\n await expect(this.usernameTxt).toBeVisible();\n await this.usernameTxt.clear();\n await this.usernameTxt.fill(username);\n }\n\n async enterEmail(email: string) {\n await expect(this.emailTxt).toBeVisible();\n await this.emailTxt.clear();\n await this.emailTxt.fill(email);\n }\n\n async enterPassword(password: string) {\n await this.passwordTxt.clear();\n await this.passwordTxt.fill(password);\n }\n\n async enterConfirmPassword(password: string) {\n await this.confirmPasswordTxt.clear();\n await this.confirmPasswordTxt.fill(password);\n }\n\n async enterConfirmNewPassword(password: string) {\n await this.confirmNewPasswordTxt.clear();\n await this.confirmNewPasswordTxt.fill(password);\n }\n\n async chooseMemberGroup(memberGroupName: string) {\n await this.clickChooseButton();\n await this.page.getByText(memberGroupName, {exact: true}).click();\n await this.clickChooseContainerButton();\n }\n\n async doesMemberInfoHaveValue(infoName: string, value: string) {\n return expect(this.memberInfoItems.filter({hasText: infoName}).locator('span')).toHaveText(value);\n }\n\n async clickApprovedToggle() {\n await this.approvedToggle.click();\n }\n\n async clickLockedOutToggle() {\n await this.lockedOutToggle.click();\n }\n\n async clickTwoFactorAuthenticationToggle() {\n await this.twoFactorAuthenticationToggle.click();\n }\n\n async clickChangePasswordButton() {\n await this.changePasswordBtn.click();\n }\n\n async clickRemoveMemberGroupByName(memberGroupName: string) {\n await this.page.locator('[name=\"' + memberGroupName + '\"]').getByLabel('Remove').click();\n }\n\n async enterNewPassword(password: string) {\n await this.newPasswordTxt.clear();\n await this.newPasswordTxt.fill(password);\n }\n\n async clickMembersMenu() {\n await this.membersMenu.click();\n }\n \n async waitForMemberToBeCreated(){\n await this.page.waitForLoadState();\n }\n \n async waitForMemberToBeDeleted() {\n await this.page.waitForLoadState();\n }\n\n async goToMembers() {\n await this.goToSection(ConstantHelper.sections.members);\n await this.clickMembersMenu();\n }\n\n async clickInfoTab() {\n await expect(this.infoTab).toBeVisible();\n await this.infoTab.click();\n }\n\n async clickCreateMembersButton() {\n await expect(this.membersCreateBtn).toBeVisible();\n await this.membersCreateBtn.click();\n }\n}\n"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ModelsBuilderUiHelper = void 0;
|
|
4
|
+
const test_1 = require("@playwright/test");
|
|
4
5
|
const UiBaseLocators_1 = require("./UiBaseLocators");
|
|
5
6
|
class ModelsBuilderUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
6
7
|
modelsBuilderTab;
|
|
@@ -11,10 +12,10 @@ class ModelsBuilderUiHelper extends UiBaseLocators_1.UiBaseLocators {
|
|
|
11
12
|
this.modelsBuilderDashboardContent = page.locator('umb-models-builder-dashboard');
|
|
12
13
|
}
|
|
13
14
|
async clickModelsBuilderTab() {
|
|
14
|
-
await this.click(
|
|
15
|
+
await this.modelsBuilderTab.click();
|
|
15
16
|
}
|
|
16
17
|
async doesModelsBuilderDashboardHaveText(text) {
|
|
17
|
-
await
|
|
18
|
+
return await (0, test_1.expect)(this.modelsBuilderDashboardContent).toContainText(text, { timeout: 10000 });
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
exports.ModelsBuilderUiHelper = ModelsBuilderUiHelper;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelsBuilderUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/ModelsBuilderUiHelper.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ModelsBuilderUiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/ModelsBuilderUiHelper.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AACvD,qDAAgD;AAEhD,MAAa,qBAAsB,SAAQ,+BAAc;IACtC,gBAAgB,CAAU;IAC1B,6BAA6B,CAAU;IAExD,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC,CAAC,CAAC;QACxE,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;IACpF,CAAC;IAED,KAAK,CAAC,qBAAqB;QACzB,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,kCAAkC,CAAC,IAAY;QACnD,OAAO,MAAM,IAAA,aAAM,EAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,EAAC,OAAO,EAAE,KAAK,EAAC,CAAC,CAAC;IAChG,CAAC;CACF;AAjBD,sDAiBC","sourcesContent":["import {Page, Locator, expect} from \"@playwright/test\";\nimport {UiBaseLocators} from \"./UiBaseLocators\";\n\nexport class ModelsBuilderUiHelper extends UiBaseLocators {\n private readonly modelsBuilderTab: Locator;\n private readonly modelsBuilderDashboardContent: Locator;\n\n constructor(page: Page) {\n super(page);\n this.modelsBuilderTab = page.getByRole('tab', {name: 'Models Builder'});\n this.modelsBuilderDashboardContent = page.locator('umb-models-builder-dashboard');\n }\n\n async clickModelsBuilderTab() {\n await this.modelsBuilderTab.click();\n }\n\n async doesModelsBuilderDashboardHaveText(text: string) {\n return await expect(this.modelsBuilderDashboardContent).toContainText(text, {timeout: 10000});\n }\n}\n"]}
|
|
@@ -2,13 +2,14 @@ import { ApiHelpers } from "./ApiHelpers";
|
|
|
2
2
|
export declare class PackageApiHelper {
|
|
3
3
|
api: ApiHelpers;
|
|
4
4
|
constructor(api: ApiHelpers);
|
|
5
|
-
|
|
5
|
+
private buildUrl;
|
|
6
|
+
get(id: string): Promise<any>;
|
|
7
|
+
getAll(): Promise<any>;
|
|
8
|
+
getByName(name: string): Promise<any>;
|
|
6
9
|
doesExist(id: string): Promise<boolean>;
|
|
7
10
|
doesNameExist(name: string): Promise<boolean>;
|
|
11
|
+
ensureNameNotExists(name: string): Promise<import("playwright-core").APIResponse | null>;
|
|
8
12
|
create(name: string, contentLoadChildNodes?: boolean, mediaLoadChildNodes?: boolean, contentNodeId?: string, mediaIds?: string[], documentTypes?: any, mediaTypes?: any, dataTypes?: any, templates?: any, partialViews?: any, stylesheets?: any, scripts?: any, languages?: any, dictionaryItems?: any): Promise<string | undefined>;
|
|
9
|
-
getByName(name: string): Promise<any>;
|
|
10
|
-
get(id: string): Promise<any>;
|
|
11
|
-
getAll(): Promise<any>;
|
|
12
13
|
update(id: string, packageData: any): Promise<import("playwright-core").APIResponse>;
|
|
13
14
|
delete(id: string): Promise<import("playwright-core").APIResponse>;
|
|
14
15
|
download(id: string): Promise<string>;
|
|
@@ -6,34 +6,56 @@ class PackageApiHelper {
|
|
|
6
6
|
constructor(api) {
|
|
7
7
|
this.api = api;
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
buildUrl(path = '') {
|
|
10
|
+
return `${this.api.baseUrl}/umbraco/management/api/v1/package/created${path}`;
|
|
11
|
+
}
|
|
12
|
+
async get(id) {
|
|
13
|
+
const response = await this.api.get(this.buildUrl('/' + id));
|
|
11
14
|
const json = await response.json();
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
return json !== null ? json : null;
|
|
16
|
+
}
|
|
17
|
+
async getAll() {
|
|
18
|
+
const response = await this.api.get(this.buildUrl('?skip=0&take=10000'));
|
|
19
|
+
const json = await response.json();
|
|
20
|
+
return json !== null ? json : null;
|
|
21
|
+
}
|
|
22
|
+
async getByName(name) {
|
|
23
|
+
const json = await this.getAll();
|
|
24
|
+
if (name !== null && json !== null) {
|
|
25
|
+
for (const item of json.items) {
|
|
26
|
+
if (item.name === name && item.id !== null) {
|
|
27
|
+
return await this.get(item.id);
|
|
16
28
|
}
|
|
17
29
|
}
|
|
18
30
|
}
|
|
19
31
|
return null;
|
|
20
32
|
}
|
|
21
33
|
async doesExist(id) {
|
|
22
|
-
const response = await this.api.get(this.
|
|
34
|
+
const response = await this.api.get(this.buildUrl('/' + id));
|
|
23
35
|
return response.status() === 200;
|
|
24
36
|
}
|
|
25
37
|
async doesNameExist(name) {
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
if (sb.name === name) {
|
|
38
|
+
const json = await this.getAll();
|
|
39
|
+
if (name !== null && json !== null) {
|
|
40
|
+
for (const item of json.items) {
|
|
41
|
+
if (item.name === name) {
|
|
31
42
|
return true;
|
|
32
43
|
}
|
|
33
44
|
}
|
|
34
45
|
}
|
|
35
46
|
return false;
|
|
36
47
|
}
|
|
48
|
+
async ensureNameNotExists(name) {
|
|
49
|
+
const json = await this.getAll();
|
|
50
|
+
if (json !== null) {
|
|
51
|
+
for (const item of json.items) {
|
|
52
|
+
if (item.name === name && item.id !== null) {
|
|
53
|
+
return await this.delete(item.id);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
37
59
|
async create(name, contentLoadChildNodes = false, mediaLoadChildNodes = false, contentNodeId, mediaIds, documentTypes, mediaTypes, dataTypes, templates, partialViews, stylesheets, scripts, languages, dictionaryItems) {
|
|
38
60
|
const packageData = {
|
|
39
61
|
"name": name,
|
|
@@ -41,77 +63,27 @@ class PackageApiHelper {
|
|
|
41
63
|
"contentLoadChildNodes": contentLoadChildNodes,
|
|
42
64
|
"mediaIds": mediaIds,
|
|
43
65
|
"mediaLoadChildNodes": mediaLoadChildNodes,
|
|
44
|
-
"documentTypes": [
|
|
45
|
-
|
|
46
|
-
],
|
|
47
|
-
"
|
|
48
|
-
|
|
49
|
-
],
|
|
50
|
-
"
|
|
51
|
-
|
|
52
|
-
]
|
|
53
|
-
"templates": [
|
|
54
|
-
templates
|
|
55
|
-
],
|
|
56
|
-
"partialViews": [
|
|
57
|
-
partialViews
|
|
58
|
-
],
|
|
59
|
-
"stylesheets": [
|
|
60
|
-
stylesheets
|
|
61
|
-
],
|
|
62
|
-
"scripts": [
|
|
63
|
-
scripts
|
|
64
|
-
],
|
|
65
|
-
"languages": [
|
|
66
|
-
languages
|
|
67
|
-
],
|
|
68
|
-
"dictionaryItems": [
|
|
69
|
-
dictionaryItems
|
|
70
|
-
]
|
|
66
|
+
"documentTypes": [documentTypes],
|
|
67
|
+
"mediaTypes": [mediaTypes],
|
|
68
|
+
"dataTypes": [dataTypes],
|
|
69
|
+
"templates": [templates],
|
|
70
|
+
"partialViews": [partialViews],
|
|
71
|
+
"stylesheets": [stylesheets],
|
|
72
|
+
"scripts": [scripts],
|
|
73
|
+
"languages": [languages],
|
|
74
|
+
"dictionaryItems": [dictionaryItems]
|
|
71
75
|
};
|
|
72
|
-
const response = await this.api.post(this.
|
|
73
|
-
// Returns the id of the created package
|
|
76
|
+
const response = await this.api.post(this.buildUrl(), packageData);
|
|
74
77
|
return response.headers().location.split("/").pop();
|
|
75
78
|
}
|
|
76
|
-
async getByName(name) {
|
|
77
|
-
const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/package/created?skip=0&take=10000');
|
|
78
|
-
const json = await response.json();
|
|
79
|
-
if (name !== null) {
|
|
80
|
-
for (const sb of json.items) {
|
|
81
|
-
if (sb.name === name) {
|
|
82
|
-
if (sb.id !== null) {
|
|
83
|
-
const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/package/created/' + sb.id);
|
|
84
|
-
return await response.json();
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
return null;
|
|
90
|
-
}
|
|
91
|
-
async get(id) {
|
|
92
|
-
const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/package/created/' + id);
|
|
93
|
-
const json = await response.json();
|
|
94
|
-
if (json !== null) {
|
|
95
|
-
return json;
|
|
96
|
-
}
|
|
97
|
-
return null;
|
|
98
|
-
}
|
|
99
|
-
async getAll() {
|
|
100
|
-
const response = await this.api.get(this.api.baseUrl + '/umbraco/management/api/v1/package/created?skip=0&take=10000');
|
|
101
|
-
const json = await response.json();
|
|
102
|
-
if (json !== null) {
|
|
103
|
-
return json;
|
|
104
|
-
}
|
|
105
|
-
return null;
|
|
106
|
-
}
|
|
107
79
|
async update(id, packageData) {
|
|
108
|
-
return await this.api.put(this.
|
|
80
|
+
return await this.api.put(this.buildUrl('/' + id), packageData);
|
|
109
81
|
}
|
|
110
82
|
async delete(id) {
|
|
111
|
-
return await this.api.delete(this.
|
|
83
|
+
return await this.api.delete(this.buildUrl('/' + id));
|
|
112
84
|
}
|
|
113
85
|
async download(id) {
|
|
114
|
-
const response = await this.api.get(this.
|
|
86
|
+
const response = await this.api.get(this.buildUrl('/' + id + '/download'));
|
|
115
87
|
return await response.text();
|
|
116
88
|
}
|
|
117
89
|
async createEmptyPackage(name) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PackageApiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/PackageApiHelper.ts"],"names":[],"mappings":";;;AAEA,MAAa,gBAAgB;IAC3B,GAAG,
|
|
1
|
+
{"version":3,"file":"PackageApiHelper.js","sourceRoot":"","sources":["../../../lib/helpers/PackageApiHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import {ApiHelpers} from \"./ApiHelpers\";\n\nexport class PackageApiHelper {\n api: ApiHelpers;\n\n constructor(api: ApiHelpers) {\n this.api = api;\n }\n\n private buildUrl(path: string = ''): string {\n return `${this.api.baseUrl}/umbraco/management/api/v1/package/created${path}`;\n }\n\n async get(id: string) {\n const response = await this.api.get(this.buildUrl('/' + id));\n const json = await response.json();\n return json !== null ? json : null;\n }\n\n async getAll() {\n const response = await this.api.get(this.buildUrl('?skip=0&take=10000'));\n const json = await response.json();\n return json !== null ? json : null;\n }\n\n async getByName(name: string) {\n const json = await this.getAll();\n\n if (name !== null && json !== null) {\n for (const item of json.items) {\n if (item.name === name && item.id !== null) {\n return await this.get(item.id);\n }\n }\n }\n return null;\n }\n\n async doesExist(id: string) {\n const response = await this.api.get(this.buildUrl('/' + id));\n return response.status() === 200;\n }\n\n async doesNameExist(name: string) {\n const json = await this.getAll();\n\n if (name !== null && json !== null) {\n for (const item of json.items) {\n if (item.name === name) {\n return true;\n }\n }\n }\n return false;\n }\n\n async ensureNameNotExists(name: string) {\n const json = await this.getAll();\n\n if (json !== null) {\n for (const item of json.items) {\n if (item.name === name && item.id !== null) {\n return await this.delete(item.id);\n }\n }\n }\n return null;\n }\n\n async create(name: string, contentLoadChildNodes = false, mediaLoadChildNodes = false, contentNodeId?: string, mediaIds?: string[], documentTypes?, mediaTypes?, dataTypes?, templates?, partialViews?, stylesheets?, scripts?, languages?, dictionaryItems?) {\n const packageData = {\n \"name\": name,\n \"contentNodeId\": contentNodeId,\n \"contentLoadChildNodes\": contentLoadChildNodes,\n \"mediaIds\": mediaIds,\n \"mediaLoadChildNodes\": mediaLoadChildNodes,\n \"documentTypes\": [documentTypes],\n \"mediaTypes\": [mediaTypes],\n \"dataTypes\": [dataTypes],\n \"templates\": [templates],\n \"partialViews\": [partialViews],\n \"stylesheets\": [stylesheets],\n \"scripts\": [scripts],\n \"languages\": [languages],\n \"dictionaryItems\": [dictionaryItems]\n };\n\n const response = await this.api.post(this.buildUrl(), packageData);\n return response.headers().location.split(\"/\").pop();\n }\n\n async update(id: string, packageData) {\n return await this.api.put(this.buildUrl('/' + id), packageData);\n }\n\n async delete(id: string) {\n return await this.api.delete(this.buildUrl('/' + id));\n }\n\n async download(id: string) {\n const response = await this.api.get(this.buildUrl('/' + id + '/download'));\n return await response.text();\n }\n\n async createEmptyPackage(name: string) {\n return await this.create(name);\n }\n}"]}
|