1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-04-24 01:18:01 +02:00

fix: convert more tests to typescript

This commit is contained in:
Ivar Conradi Østhus 2021-09-14 20:17:13 +02:00
parent 80291dffcf
commit dedec5c7d1
No known key found for this signature in database
GPG Key ID: 31AC596886B0BD09
6 changed files with 35 additions and 35 deletions

View File

@ -116,6 +116,7 @@
"@types/bcrypt": "^5.0.0",
"@types/express": "^4.17.11",
"@types/express-session": "^1.17.4",
"@types/faker": "^5.5.8",
"@types/jest": "^27.0.1",
"@types/js-yaml": "^3.12.7",
"@types/memoizee": "^0.4.6",

View File

@ -1,6 +1,4 @@
'use strict';
const logger = require('./logger');
import * as logger from './logger';
test('should require custom logger to implement info', () => {
const loggerImpl = {
@ -10,7 +8,8 @@ test('should require custom logger to implement info', () => {
};
const provider = () => loggerImpl;
expect(() => {
logger.validateLogProvider(provider)();
// @ts-ignore:next-line
return logger.validateLogProvider(provider);
}).toThrowError(new TypeError('Logger must implement info'));
});
@ -22,6 +21,7 @@ test('should require custom logger to implement error', () => {
};
const provider = () => loggerImpl;
expect(() => {
logger.validateLogProvider(provider)();
// @ts-ignore:next-line
return logger.validateLogProvider(provider);
}).toThrowError(new TypeError('Logger must implement error'));
});

View File

@ -1,8 +1,7 @@
'use strict';
const { EventEmitter } = require('events');
const express = require('express');
const { createTestConfig } = require('../test/config/test-config');
import { EventEmitter } from 'events';
import express from 'express';
import { createTestConfig } from '../test/config/test-config';
import { start, create } from './server-impl';
jest.mock(
'./routes',
@ -14,8 +13,6 @@ jest.mock(
},
);
const getApp = require('./app');
const noop = () => {};
const eventStore = new EventEmitter();
@ -25,8 +22,6 @@ const settingStore = {
},
};
jest.mock('./app', () => getApp);
jest.mock('./metrics', () => ({
createMetricsMonitor() {
return {
@ -60,8 +55,6 @@ jest.mock(
},
);
const serverImpl = require('./server-impl');
test('should call preHook', async () => {
let called = 0;
const config = createTestConfig({
@ -70,13 +63,14 @@ test('should call preHook', async () => {
called++;
},
});
await serverImpl.start(config);
const { stop } = await start(config);
expect(called).toBe(1);
await stop();
});
test('should call preRouterHook', async () => {
let called = 0;
await serverImpl.start(
const { stop } = await start(
createTestConfig({
server: { port: 0 },
preRouterHook: () => {
@ -85,6 +79,7 @@ test('should call preRouterHook', async () => {
}),
);
expect(called === 1).toBe(true);
await stop();
});
test('should call eventHook', async () => {
@ -95,26 +90,29 @@ test('should call eventHook', async () => {
called++;
},
});
await serverImpl.start(config);
const { stop } = await start(config);
eventStore.emit('feature-created', {});
expect(called === 1).toBe(true);
await stop();
});
test('should auto-create server on start()', async () => {
const { server } = await serverImpl.start(
const { server, stop } = await start(
createTestConfig({ server: { port: 0 } }),
);
expect(typeof server === 'undefined').toBe(false);
await stop();
});
test('should not create a server using create()', async () => {
const config = createTestConfig({ server: { port: 0 } });
const { server } = await serverImpl.create(config);
const { server, stop } = await create(config);
expect(server).toBeUndefined();
await stop();
});
test('should shutdown the server when calling stop()', async () => {
const { server, stop } = await serverImpl.start(
const { server, stop } = await start(
createTestConfig({ server: { port: 0 } }),
);
await stop();

View File

@ -1,9 +1,7 @@
'use strict';
const { setupApp } = require('../../helpers/test-helper');
const metricsExample = require('../../../examples/client-metrics.json');
const dbInit = require('../../helpers/database-init');
const getLogger = require('../../../fixtures/no-logger');
import { setupApp } from '../../helpers/test-helper';
import metricsExample from '../../../examples/client-metrics.json';
import dbInit from '../../helpers/database-init';
import getLogger from '../../../fixtures/no-logger';
let app;
let db;

View File

@ -1,10 +1,8 @@
'use strict';
const faker = require('faker');
const { setupApp } = require('../../helpers/test-helper');
const dbInit = require('../../helpers/database-init');
const getLogger = require('../../../fixtures/no-logger');
const version = require('../../../../lib/util/version');
import faker from 'faker';
import { setupApp } from '../../helpers/test-helper';
import dbInit from '../../helpers/database-init';
import getLogger from '../../../fixtures/no-logger';
import version from '../../../../lib/util/version';
const asyncFilter = async (arr, predicate) => {
const results = await Promise.all(arr.map(predicate));

View File

@ -744,6 +744,11 @@
"@types/qs" "*"
"@types/serve-static" "*"
"@types/faker@^5.5.8":
version "5.5.8"
resolved "https://registry.yarnpkg.com/@types/faker/-/faker-5.5.8.tgz#6649adfdfdbb0acf95361fc48f2d0ca6e88bd1cf"
integrity sha512-bsl0rYsaZVHlZkynL5O04q6YXDmVjcid6MbOHWqvtE2WWs/EKhp0qchDDhVWlWyQXUffX1G83X9LnMxRl8S/Mw==
"@types/graceful-fs@^4.1.2":
version "4.1.5"
resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz"