@insurgo/niam.xrm.client.test
Version:
InMemory Xrm WebApi
33 lines (32 loc) • 1.45 kB
TypeScript
/// <reference types="xrm" />
import { Entity } from './definitions';
export declare class InMemoryWebApi implements Xrm.WebApi {
private testContext;
constructor(testContext: TestApiContext);
init(entities: Entity[]): void;
private entities;
private getEntitiesByLogicalName;
private getIndex;
get(entityLogicalName: string, id: string): Entity;
private replace;
isAvailableOffline(entityLogicalName: string): boolean;
online: Xrm.WebApiOnline;
offline: Xrm.WebApiOffline;
getEntities(): Entity[];
createRecord(entityLogicalName: string, record: any): Xrm.Async.PromiseLike<Xrm.CreateResponse>;
deleteRecord(entityLogicalName: string, id: string): Xrm.Async.PromiseLike<string>;
retrieveRecord(entityLogicalName: string, id: string, options?: string): Xrm.Async.PromiseLike<any>;
retrieveMultipleRecords(entityLogicalName: string, options?: string, maxPageSize?: number): Xrm.Async.PromiseLike<Xrm.RetrieveMultipleResult>;
updateRecord(entityLogicalName: string, id: string, data: any): Xrm.Async.PromiseLike<any>;
}
export declare class TestApiContext {
private _createdEntities;
get createdEntities(): Entity[];
private _updatedEntities;
get updatedEntities(): Entity[];
private _deletedEntities;
get deletedEntities(): Entity[];
private _webApi;
get webApi(): InMemoryWebApi;
init(entities: Entity[]): void;
}