umbraco-cypress-testhelpers
Version:
Test helpers for making Cypress tests for Umbraco solutions
138 lines • 9.21 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.UserGroupBuilder = void 0;
const tslib_1 = require("tslib");
const faker_1 = tslib_1.__importDefault(require("faker"));
const camelize_1 = tslib_1.__importDefault(require("camelize"));
const permissionsBuilder_1 = require("./permissionsBuilder");
const nodePermissionCollectionBuilder_1 = require("./nodePermissionCollectionBuilder");
class UserGroupBuilder {
constructor() {
this.sections = [];
this.users = [];
this.allowedLanguages = [];
}
withAlias(alias) {
this.alias = alias;
return this;
}
getAlias() {
return this.alias || 'a' + camelize_1.default(this.name);
}
addNodePermissions(nodePermissionsBuilder) {
const builder = nodePermissionsBuilder === null || nodePermissionsBuilder === undefined
? new nodePermissionCollectionBuilder_1.NodePermissionCollectionBuilder(this)
: nodePermissionsBuilder;
this.assignedPermissionsBuilder = builder;
return builder;
}
addDefaultPermissions(userGroupPermissionsBuilder) {
const builder = userGroupPermissionsBuilder === null || userGroupPermissionsBuilder === undefined
? new permissionsBuilder_1.PermissionsBuilder(this)
: userGroupPermissionsBuilder;
this.defaultPermissionsBuilder = builder;
return builder;
}
withIcon(icon) {
this.icon = icon;
return this;
}
withId(id) {
this.id = id;
return this;
}
withName(name) {
this.name = name;
return this;
}
withParentId(parentId) {
this.parentId = parentId;
return this;
}
withSections(sections) {
this.sections = sections;
return this;
}
withLanguages(languages) {
this.allowedLanguages = languages;
return this;
}
appendLanguage(languageId) {
this.allowedLanguages.push(languageId);
return this;
}
appendSections(sections) {
sections.forEach((section) => {
this.sections.push(section);
});
return this;
}
appendSection(section) {
this.sections.push(section);
return this;
}
withContentStartNode(contentStartNodeId) {
this.startContentId = contentStartNodeId;
return this;
}
withMediaStartNode(mediaStartNodeId) {
this.startMediaId = mediaStartNodeId;
return this;
}
withUsers(users) {
this.users = users;
return this;
}
appendUsers(users) {
users.forEach((userId) => {
this.users.push(userId);
});
return this;
}
appendUser(user) {
this.users.push(user);
return this;
}
withAction(action) {
this.action = action;
return this;
}
withSave() {
this.action = 'save';
return this;
}
withSaveNew() {
this.action = 'saveNew';
return this;
}
build() {
if (this.name === undefined) {
this.withName(faker_1.default.random.uuid());
}
let defaultPermissions = [];
if (this.defaultPermissionsBuilder != undefined) {
defaultPermissions = this.defaultPermissionsBuilder.build();
}
let assignedPermissions = {};
if (this.assignedPermissionsBuilder != undefined) {
assignedPermissions = this.assignedPermissionsBuilder.build();
}
return {
action: this.action || 'saveNew',
alias: this.getAlias(),
assignedPermissions: assignedPermissions,
defaultPermissions: defaultPermissions,
icon: this.icon || 'icon-users',
id: this.id || 0,
name: this.name,
parentId: this.parentId || -1,
sections: this.sections || [],
allowedLanguages: this.allowedLanguages || [],
startContentId: this.startContentId || -1,
startMediaId: this.startMediaId || -1,
users: this.users || [],
};
}
}
exports.UserGroupBuilder = UserGroupBuilder;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlckdyb3VwQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbXMvYnVpbGRlcnMvdXNlckdyb3Vwcy91c2VyR3JvdXBCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwwREFBMEI7QUFDMUIsZ0VBQWdDO0FBQ2hDLDZEQUEwRDtBQUMxRCx1RkFBb0Y7QUFFcEYsTUFBYSxnQkFBZ0I7SUFlM0I7UUFDRSxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBSztRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLElBQUksR0FBRyxHQUFHLGtCQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxzQkFBd0Q7UUFDekUsTUFBTSxPQUFPLEdBQ1gsc0JBQXNCLEtBQUssSUFBSSxJQUFJLHNCQUFzQixLQUFLLFNBQVM7WUFDckUsQ0FBQyxDQUFDLElBQUksaUVBQStCLENBQUMsSUFBSSxDQUFDO1lBQzNDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQztRQUU3QixJQUFJLENBQUMsMEJBQTBCLEdBQUcsT0FBTyxDQUFDO1FBQzFDLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxxQkFBcUIsQ0FBQywyQkFBZ0Q7UUFDcEUsTUFBTSxPQUFPLEdBQ1gsMkJBQTJCLEtBQUssSUFBSSxJQUFJLDJCQUEyQixLQUFLLFNBQVM7WUFDL0UsQ0FBQyxDQUFDLElBQUksdUNBQWtCLENBQUMsSUFBSSxDQUFDO1lBQzlCLENBQUMs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