@shko.online/componentframework-mock
Version:
Mocking library to help with testing PowerApps Component Framework Components
46 lines (45 loc) • 2.08 kB
TypeScript
/// <reference types="powerapps-component-framework" />
import { SinonSpiedInstance, SinonStub } from 'sinon';
import { ReactElement } from 'react';
import { ComponentValues, MockGenerator, MockGeneratorOverrides } from './MockGenerator';
import { MockToRaw, PropertyMap, PropertyToMock } from '../ComponentFramework-Mock';
import { ShkoOnline } from '../ShkoOnline';
import { ContextMock } from '../ComponentFramework-Mock';
import { MetadataDB } from './Metadata.db';
/**
* This class mocks the React version of the PowerApps Component Framework control.
*/
export declare class ComponentFrameworkMockGeneratorReact<TInputs extends ShkoOnline.PropertyTypes<TInputs>, TOutputs extends ShkoOnline.KnownTypes<TOutputs>> implements MockGenerator<TInputs, TOutputs> {
_PendingUpdates: {
value: ComponentFramework.LookupValue | ComponentValues<TInputs>;
table: string;
column: string;
row?: string;
}[];
RefreshParameters: SinonStub<[
], void>;
RefreshDatasets: SinonStub<[
], void>;
UpdateValues: SinonStub<[
/*items*/ Partial<MockToRaw<TInputs, PropertyToMock<TInputs>>>
], void>;
context: ContextMock<TInputs>;
control: SinonSpiedInstance<ComponentFramework.ReactControl<TInputs, TOutputs>>;
notifyOutputChanged: SinonStub<[
], void>;
onOutputChanged: SinonStub<[
/*updates*/ Partial<TOutputs>
], void>;
outputOnlyProperties: ShkoOnline.OutputOnlyTypes<TInputs, TOutputs>;
resizeObserver: ResizeObserver;
state: ComponentFramework.Dictionary;
SetControlResource: SinonStub<[
/*resource*/ string
], void>;
metadata: MetadataDB;
constructor(control: new () => ComponentFramework.ReactControl<TInputs, TOutputs>, inputs: PropertyMap<TInputs>, outputs?: ShkoOnline.OutputOnlyTypes<{}, TOutputs>, overrides?: MockGeneratorOverrides);
ExecuteInit(): void;
private circuitBreaker;
ExecuteUpdateView(): ReactElement;
}
//# sourceMappingURL=ComponentFramework-Mock-Generator-React.d.ts.map