72 lines
1.6 KiB
JavaScript
72 lines
1.6 KiB
JavaScript
// The window implementation in jest does not contain a matchMedia field.
|
|
// Official description in the documentation
|
|
// https://jestjs.io/docs/manual-mocks#mocking-methods-which-are-not-implemented-in-jsdom
|
|
|
|
/* eslint-disable */
|
|
Object.defineProperty(window, 'matchMedia', {
|
|
writable: true,
|
|
value: jest.fn().mockImplementation((query) => ({
|
|
matches: false,
|
|
media: query,
|
|
onchange: null,
|
|
addEventListener: jest.fn(),
|
|
removeEventListener: jest.fn(),
|
|
dispatchEvent: jest.fn(),
|
|
})),
|
|
});
|
|
|
|
HTMLCanvasElement.prototype.getContext = () => {
|
|
// return whatever getContext has to return
|
|
};
|
|
|
|
// Adding the DL object to the Window.
|
|
Object.defineProperty(window, 'DL', {
|
|
writable: true,
|
|
value: {
|
|
user: {},
|
|
requestId: '',
|
|
endpoints: {
|
|
charts: '',
|
|
},
|
|
userSettings: {},
|
|
},
|
|
});
|
|
|
|
jest.mock(`../../src/ui/utils/utils.ts`, () => {
|
|
return {
|
|
isIframe: jest.fn(),
|
|
isEnabledFeature: jest.fn(),
|
|
};
|
|
});
|
|
|
|
jest.mock(`../../src/ui/libs/schematic-sdk/index.ts`, () => {
|
|
return {
|
|
iam: {},
|
|
bi: {},
|
|
system: {},
|
|
banners: {},
|
|
};
|
|
});
|
|
|
|
jest.mock(`../../src/ui/libs/userSettings/index.ts`, () => {
|
|
return {
|
|
UserSettings: {
|
|
getInstance: () => {
|
|
return {
|
|
getSettings: () => {
|
|
return {};
|
|
},
|
|
};
|
|
},
|
|
},
|
|
};
|
|
});
|
|
|
|
jest.mock('@gravity-ui/chartkit/gravity-charts', () => {
|
|
return {
|
|
CustomShapeRenderer: {
|
|
pieCenterText: () => {},
|
|
},
|
|
};
|
|
});
|