umbraco-cypress-testhelpers
Version:
Test helpers for making Cypress tests for Umbraco solutions
158 lines • 15.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FormBuilderHelper = void 0;
const tslib_1 = require("tslib");
const __1 = require("../../..");
const faker_1 = tslib_1.__importDefault(require("faker"));
class FormBuilderHelper {
constructor() {
this.docTypeAlias = __1.AliasHelper.toSafeAlias(faker_1.default.random.uuid());
this.formPrefix = 'formTest';
this.dataTypePrefix = 'dataTypeTest';
this.templatePrefix = 'templateTest';
this.docTypePrefix = 'docTypeTest';
this.formPickerAlias = 'myFormPicker';
}
build(model) {
var _a, _b, _c, _d, _e, _f, _g, _h;
const f = new __1.FormBuilder().withName(model.formModel.name);
if (model.workflows) {
(_a = model.workflows) === null || _a === void 0 ? void 0 : _a.forEach((workflow) => {
const wf = f
.addFormWorkflowType(workflow.executeOn)
.withWorkflowTypeId(workflow.workflowTypeId)
.withIncludeSensitiveData(workflow.includeSensitiveData)
.withName(workflow.name);
workflow.settings.forEach((setting) => {
wf.addSetting(setting);
});
wf.done();
});
}
const container = f.addPage().addFieldSet().addContainer();
(_b = model.shortAnswerFields) === null || _b === void 0 ? void 0 : _b.forEach((shortAnswerField) => {
container
.addShortAnswerField()
.withId(shortAnswerField.id)
.withAlias(shortAnswerField === null || shortAnswerField === void 0 ? void 0 : shortAnswerField.alias)
.withCaption(shortAnswerField === null || shortAnswerField === void 0 ? void 0 : shortAnswerField.caption)
.withSensitiveData(shortAnswerField === null || shortAnswerField === void 0 ? void 0 : shortAnswerField.containsSensitiveData)
.withMandatory(shortAnswerField === null || shortAnswerField === void 0 ? void 0 : shortAnswerField.mandatory)
.withValidationRegex(shortAnswerField === null || shortAnswerField === void 0 ? void 0 : shortAnswerField.regex)
.done();
});
(_c = model.longAnswerFields) === null || _c === void 0 ? void 0 : _c.forEach((longAnswerField) => {
container
.addLongAnswerField()
.withId(longAnswerField.id)
.withAlias(longAnswerField === null || longAnswerField === void 0 ? void 0 : longAnswerField.alias)
.withCaption(longAnswerField === null || longAnswerField === void 0 ? void 0 : longAnswerField.caption)
.withSensitiveData(longAnswerField === null || longAnswerField === void 0 ? void 0 : longAnswerField.containsSensitiveData)
.withMandatory(longAnswerField === null || longAnswerField === void 0 ? void 0 : longAnswerField.mandatory)
.withValidationRegex(longAnswerField === null || longAnswerField === void 0 ? void 0 : longAnswerField.regex)
.done();
});
(_d = model.passwordFields) === null || _d === void 0 ? void 0 : _d.forEach((passwordField) => {
container
.addPasswordField()
.withId(passwordField.id)
.withMandatory(passwordField === null || passwordField === void 0 ? void 0 : passwordField.mandatory)
.withValidationRegex(passwordField === null || passwordField === void 0 ? void 0 : passwordField.regex)
.done();
});
(_e = model.checkboxFields) === null || _e === void 0 ? void 0 : _e.forEach((checkboxField) => {
container
.addCheckboxField()
.withId(checkboxField.id)
.withMandatory(checkboxField === null || checkboxField === void 0 ? void 0 : checkboxField.mandatory)
.withValidationRegex(checkboxField === null || checkboxField === void 0 ? void 0 : checkboxField.regex)
.done();
});
(_f = model.dateFields) === null || _f === void 0 ? void 0 : _f.forEach((dateField) => {
container
.addDateField()
.withId(dateField.id)
.withMandatory(dateField === null || dateField === void 0 ? void 0 : dateField.mandatory)
.withValidationRegex(dateField === null || dateField === void 0 ? void 0 : dateField.regex)
.done();
});
(_g = model.dropDownFields) === null || _g === void 0 ? void 0 : _g.forEach((dropDownField) => {
container
.addDropDownField()
.withId(dropDownField.id)
.withAlias(dropDownField === null || dropDownField === void 0 ? void 0 : dropDownField.alias)
.withCaption(dropDownField === null || dropDownField === void 0 ? void 0 : dropDownField.caption)
.withSensitiveData(dropDownField === null || dropDownField === void 0 ? void 0 : dropDownField.containsSensitiveData)
.withPrevalueSourceId(dropDownField.prevalueSourceId)
.withPrevalues(dropDownField.preValues)
.withMandatory(dropDownField === null || dropDownField === void 0 ? void 0 : dropDownField.mandatory)
.withValidationRegex(dropDownField === null || dropDownField === void 0 ? void 0 : dropDownField.regex)
.done();
});
(_h = model.uploadFields) === null || _h === void 0 ? void 0 : _h.forEach((uploadField) => {
container
.addUploadField()
.withId(uploadField.id)
.withAlias(uploadField === null || uploadField === void 0 ? void 0 : uploadField.alias)
.withCaption(uploadField === null || uploadField === void 0 ? void 0 : uploadField.caption)
.withSensitiveData(uploadField === null || uploadField === void 0 ? void 0 : uploadField.containsSensitiveData)
.withMandatory(uploadField === null || uploadField === void 0 ? void 0 : uploadField.mandatory)
.withValidationRegex(uploadField === null || uploadField === void 0 ? void 0 : uploadField.regex);
});
container.done().done().done();
return f.build();
}
insert(theForm) {
return cy.saveForm(theForm).then((formBody) => formBody);
}
// public insertFormOnPage({
// formBuild,
// dataTypePrefix = this.dataTypePrefix,
// templatePrefix = this.templatePrefix,
// docTypePrefix = this.docTypePrefix,
// formPickerAlias = this.formPickerAlias,
// visit = true,
// }: {
// formBuild;
// dataTypePrefix?: string;
// templatePrefix?: string;
// docTypePrefix?: string;
// formPickerAlias?: string;
// visit?: boolean;
// }) {
// return cy.saveForm(formBuild).then((formBody) => {
// const dataType = this.buildDataType(dataTypePrefix);
// cy.saveDataType(dataType).then((dataTypeBody) => {
// const template = this.buildTemplate(templatePrefix);
// cy.saveTemplate(template).then((templateBody) => {
// const docType = this.buildContentType_(
// templateBody,
// docTypePrefix,
// this.docTypeAlias,
// dataTypeBody,
// formPickerAlias,
// );
// cy.saveDocumentType(docType).then((docTypeBody) => {
// const content = this.buildContent_(templateBody, docTypeBody, formPickerAlias, formBody);
// cy.saveContent(content).then((contentBody) => {
// return visit === true
// ? cy.visit(contentBody.urls[0].text).then(() => {
// return { formBody, dataType: dataTypeBody, templateBody, docTypeBody, content: contentBody };
// })
// : { formBody, dataType: dataTypeBody, templateBody, docTypeBody, content: contentBody };
// });
// });
// });
// });
// });
// }
cleanUp({ formPrefix = this.formPrefix, dataTypePrefix = this.dataTypePrefix, templatePrefix = this.templatePrefix, docTypePrefix = this.docTypePrefix, }) {
cy.deleteFormsByNamePrefix(formPrefix);
cy.deleteDocumentTypesByNamePrefix(docTypePrefix);
cy.deleteDataTypesByNamePrefix(dataTypePrefix);
cy.deleteTemplatesByNamePrefix(templatePrefix);
cy.deleteAllContent();
}
}
exports.FormBuilderHelper = FormBuilderHelper;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybUJ1aWxkZXJIZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZm9ybXMvYnVpbGRlcnMvaGVscGVycy9mb3JtQnVpbGRlckhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsZ0NBQW9EO0FBVXBELDBEQUEwQjtBQUUxQixNQUFhLGlCQUFpQjtJQUE5QjtRQUNtQixpQkFBWSxHQUFHLGVBQVcsQ0FBQyxXQUFXLENBQUMsZUFBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTdELGVBQVUsR0FBRyxVQUFVLENBQUM7UUFDeEIsbUJBQWMsR0FBRyxjQUFjLENBQUM7UUFDaEMsbUJBQWMsR0FBRyxjQUFjLENBQUM7UUFDaEMsa0JBQWEsR0FBRyxhQUFhLENBQUM7UUFDOUIsb0JBQWUsR0FBRyxjQUFjLENBQUM7SUFtS25ELENBQUM7SUFqS1EsS0FBSyxDQUFDLEtBVVo7O1FBQ0MsTUFBTSxDQUFDLEdBQUcsSUFBSSxlQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzRCxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7WUFDbkIsTUFBQSxLQUFLLENBQUMsU0FBUywwQ0FBRSxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFDcEMsTUFBTSxFQUFFLEdBQUcsQ0FBQztxQkFDVCxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDO3FCQUN2QyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDO3FCQUMzQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUM7cUJBQ3ZELFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzNCLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7b0JBQ3BDLEVBQUUsQ0FBQyxVQUFVLENB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