@shko.online/componentframework-mock
Version:
Mocking library to help with testing PowerApps Component Framework Components
36 lines (33 loc) • 1.33 kB
text/typescript
/*
Copyright (c) 2022 Betim Beja and Shko Online LLC
Licensed under the MIT license.
*/
import { stub } from 'sinon';
import type { SinonStub } from 'sinon';
export class ModeMock implements ComponentFramework.Mode {
allocatedHeight: number;
allocatedWidth: number;
isControlDisabled: boolean;
isVisible: boolean;
label: string;
setControlState: SinonStub<[state: ComponentFramework.Dictionary], boolean>;
_FullScreen: boolean;
_TrackingContainerResize: boolean;
setFullScreen: SinonStub<[value: boolean], void>;
trackContainerResize: SinonStub<[value: boolean], void>;
constructor() {
this.allocatedHeight = -1;
this.allocatedWidth = -1;
this.isVisible = true;
this.isControlDisabled = false;
this.label = 'Mocked with @shko.online/componentframework-mock';
this.setControlState = stub(); // this is mocked in ComponentFrameworkMockGenerator
this._FullScreen = false;
this.setFullScreen = stub(); // this is mocked in mockNotifyOutputChanged
this.trackContainerResize = stub(); // this is mocked in ComponentFrameworkMockGenerator
this.trackContainerResize.callsFake((value) => {
this._TrackingContainerResize = value;
});
this._TrackingContainerResize = false;
}
}