mirror of
https://github.com/grafana/grafana.git
synced 2025-02-13 00:55:47 -06:00
* Add and configure eslint-plugin-import * Fix the lint:ts npm command * Autofix + prettier all the files * Manually fix remaining files * Move jquery code in jest-setup to external file to safely reorder imports * Resolve issue caused by circular dependencies within Prometheus * Update .betterer.results * Fix missing // @ts-ignore * ignore iconBundle.ts * Fix missing // @ts-ignore
29 lines
881 B
TypeScript
29 lines
881 B
TypeScript
import { IScope } from 'angular';
|
|
|
|
import { promiseToDigest } from './promiseToDigest';
|
|
|
|
describe('promiseToDigest', () => {
|
|
describe('when called with a promise that resolves', () => {
|
|
it('then evalAsync should be called on $scope', async () => {
|
|
const $scope: IScope = { $evalAsync: jest.fn() } as any as IScope;
|
|
|
|
await promiseToDigest($scope)(Promise.resolve(123));
|
|
|
|
expect($scope.$evalAsync).toHaveBeenCalledTimes(1);
|
|
});
|
|
});
|
|
|
|
describe('when called with a promise that rejects', () => {
|
|
it('then evalAsync should be called on $scope', async () => {
|
|
const $scope: IScope = { $evalAsync: jest.fn() } as any as IScope;
|
|
|
|
try {
|
|
await promiseToDigest($scope)(Promise.reject(123));
|
|
} catch (error) {
|
|
expect(error).toEqual(123);
|
|
expect($scope.$evalAsync).toHaveBeenCalledTimes(1);
|
|
}
|
|
});
|
|
});
|
|
});
|