UNPKG

xrm-mock-generator

Version:

Generates a mock Xrm.Page object. Commonly used by xrm-mock to test Dynamics 365 client-side customisations.

39 lines (32 loc) 1.31 kB
(function (undefined) { "use strict"; var XrmMock = require("xrm-mock"); var Ui = require("./ui.js"); var Control = function () {}; var createControl = function (name, label, isVisible, controlType) { var control = new XrmMock.ControlMock({ name: name, controlType: controlType, uiLabelElement: Ui.createLabelElement(label), uiCanGetVisibleElement: Ui.createCanGetVisibleElement(isVisible) }); }; var addControl = function (control) { Xrm.Page.ui.controls.push(control); }; Control.prototype.createStringControl = function (name, label, isVisible, isDisabled, attribute) { var stringControl = new XrmMock.StringControlMock( new XrmMock.AutoLookupControlMock( new XrmMock.StandardControlMock({ control: createControl(name, label, isVisible), attribute: attribute, disabled: isDisabled, uiStandardElement: Ui.createStandardElement(label, isVisible) }), new XrmMock.UiKeyPressableMock() ) ); addControl(stringControl); }; module.exports = new Control(); }());