imng-kendo-chart-odata
Version:
A library to make integrating Angular Kendo Charts and NGRX a bit simpler.
45 lines (40 loc) • 1.47 kB
JavaScript
import { of } from 'rxjs';
import { readFirst } from 'imng-ngrx-utils/testing';
class ChartODataMockFacade {
constructor() {
this.seriesData$ = of([
{ seriesName: '🔷integration Tests🔷', metric: 5, interval: '💩' },
]);
this.loadSeriesData = jest.fn();
}
}
function createChartODataMockFacade(
// eslint-disable-next-line @typescript-eslint/no-explicit-any
mockFacade) {
const localFacade = new ChartODataMockFacade();
if (!mockFacade) {
return localFacade;
}
mockFacade.seriesData$ = mockFacade.seriesData$ || localFacade.seriesData$;
mockFacade.loadSeriesData = mockFacade.loadSeriesData || jest.fn();
return mockFacade;
}
async function testLoadSeriesData(facade, odataService) {
let seriesData = await readFirst(facade.seriesData$);
expect(seriesData).toStrictEqual([]);
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const response = of({
data: [{ id: 'i ❤' }, { id: 'imng' }, { id: '💯' }],
total: 3,
});
odataService.fetch = jest.fn(() => response);
facade.loadSeriesData({});
seriesData = await readFirst(facade.seriesData$);
expect(seriesData).toBeTruthy();
expect(odataService.fetch).toHaveBeenCalledTimes(1);
}
/**
* Generated bundle index. Do not edit.
*/
export { ChartODataMockFacade, createChartODataMockFacade, testLoadSeriesData };
//# sourceMappingURL=imng-kendo-chart-odata-testing.mjs.map