xrm-mock
Version:
A fake implementation of the Xrm object model. Used for testing Dynamics 365 client-side scripts.
45 lines (44 loc) • 2.32 kB
TypeScript
/// <reference types="xrm" />
import { ItemCollectionMock } from "../../collection/itemcollection/itemcollection.mock";
import { StandardControlMock } from "../../controls/standardcontrol/standardcontrol.mock";
export type AttributeReturnType = boolean | Date | number | Xrm.LookupValue[] | string | null;
export declare class AttributeMock<TControl extends StandardControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> implements Xrm.Attributes.Attribute {
attributeType: Xrm.Attributes.AttributeType;
controls: ItemCollectionMock<TControl>;
isDirty: boolean;
name: string;
requiredLevel: Xrm.Attributes.RequirementLevel;
submitMode: Xrm.SubmitMode;
value: TValue;
format: Xrm.Attributes.AttributeFormat;
eventHandlers: Xrm.Events.ContextSensitiveHandler[];
constructor(components: IAttributeComponents<TControl, TAttribute, TValue>);
addOnChange(handler: Xrm.Events.ContextSensitiveHandler): void;
fireOnChange(): void;
getAttributeType(): Xrm.Attributes.AttributeType;
getFormat(): Xrm.Attributes.AttributeFormat;
getIsDirty(): boolean;
getName(): string;
getParent(): Xrm.Entity;
getRequiredLevel(): Xrm.Attributes.RequirementLevel;
getSubmitMode(): Xrm.SubmitMode;
getUserPrivilege(): Xrm.Privilege;
removeOnChange(handler: Xrm.Events.ContextSensitiveHandler): void;
setRequiredLevel(requirementLevel: Xrm.Attributes.RequirementLevel): void;
setSubmitMode(submitMode: Xrm.SubmitMode): void;
getValue(): TValue;
setValue(value: TValue): void;
isValid(): boolean;
setIsValid(valid: boolean, message: string): void;
}
export interface IAttributeComponents<TControl extends StandardControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> {
attributeType?: Xrm.Attributes.AttributeType;
controls?: ItemCollectionMock<TControl>;
eventHandlers?: Xrm.Events.ContextSensitiveHandler[];
format?: Xrm.Attributes.AttributeFormat;
isDirty?: boolean;
name: string;
requiredLevel?: Xrm.Attributes.RequirementLevel;
submitMode?: Xrm.SubmitMode;
value?: TValue | null;
}