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:
parent
80291dffcf
commit
dedec5c7d1
@ -116,6 +116,7 @@
|
|||||||
"@types/bcrypt": "^5.0.0",
|
"@types/bcrypt": "^5.0.0",
|
||||||
"@types/express": "^4.17.11",
|
"@types/express": "^4.17.11",
|
||||||
"@types/express-session": "^1.17.4",
|
"@types/express-session": "^1.17.4",
|
||||||
|
"@types/faker": "^5.5.8",
|
||||||
"@types/jest": "^27.0.1",
|
"@types/jest": "^27.0.1",
|
||||||
"@types/js-yaml": "^3.12.7",
|
"@types/js-yaml": "^3.12.7",
|
||||||
"@types/memoizee": "^0.4.6",
|
"@types/memoizee": "^0.4.6",
|
||||||
|
@ -1,6 +1,4 @@
|
|||||||
'use strict';
|
import * as logger from './logger';
|
||||||
|
|
||||||
const logger = require('./logger');
|
|
||||||
|
|
||||||
test('should require custom logger to implement info', () => {
|
test('should require custom logger to implement info', () => {
|
||||||
const loggerImpl = {
|
const loggerImpl = {
|
||||||
@ -10,7 +8,8 @@ test('should require custom logger to implement info', () => {
|
|||||||
};
|
};
|
||||||
const provider = () => loggerImpl;
|
const provider = () => loggerImpl;
|
||||||
expect(() => {
|
expect(() => {
|
||||||
logger.validateLogProvider(provider)();
|
// @ts-ignore:next-line
|
||||||
|
return logger.validateLogProvider(provider);
|
||||||
}).toThrowError(new TypeError('Logger must implement info'));
|
}).toThrowError(new TypeError('Logger must implement info'));
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -22,6 +21,7 @@ test('should require custom logger to implement error', () => {
|
|||||||
};
|
};
|
||||||
const provider = () => loggerImpl;
|
const provider = () => loggerImpl;
|
||||||
expect(() => {
|
expect(() => {
|
||||||
logger.validateLogProvider(provider)();
|
// @ts-ignore:next-line
|
||||||
|
return logger.validateLogProvider(provider);
|
||||||
}).toThrowError(new TypeError('Logger must implement error'));
|
}).toThrowError(new TypeError('Logger must implement error'));
|
||||||
});
|
});
|
@ -1,8 +1,7 @@
|
|||||||
'use strict';
|
import { EventEmitter } from 'events';
|
||||||
|
import express from 'express';
|
||||||
const { EventEmitter } = require('events');
|
import { createTestConfig } from '../test/config/test-config';
|
||||||
const express = require('express');
|
import { start, create } from './server-impl';
|
||||||
const { createTestConfig } = require('../test/config/test-config');
|
|
||||||
|
|
||||||
jest.mock(
|
jest.mock(
|
||||||
'./routes',
|
'./routes',
|
||||||
@ -14,8 +13,6 @@ jest.mock(
|
|||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
const getApp = require('./app');
|
|
||||||
|
|
||||||
const noop = () => {};
|
const noop = () => {};
|
||||||
|
|
||||||
const eventStore = new EventEmitter();
|
const eventStore = new EventEmitter();
|
||||||
@ -25,8 +22,6 @@ const settingStore = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
jest.mock('./app', () => getApp);
|
|
||||||
|
|
||||||
jest.mock('./metrics', () => ({
|
jest.mock('./metrics', () => ({
|
||||||
createMetricsMonitor() {
|
createMetricsMonitor() {
|
||||||
return {
|
return {
|
||||||
@ -60,8 +55,6 @@ jest.mock(
|
|||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
const serverImpl = require('./server-impl');
|
|
||||||
|
|
||||||
test('should call preHook', async () => {
|
test('should call preHook', async () => {
|
||||||
let called = 0;
|
let called = 0;
|
||||||
const config = createTestConfig({
|
const config = createTestConfig({
|
||||||
@ -70,13 +63,14 @@ test('should call preHook', async () => {
|
|||||||
called++;
|
called++;
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
await serverImpl.start(config);
|
const { stop } = await start(config);
|
||||||
expect(called).toBe(1);
|
expect(called).toBe(1);
|
||||||
|
await stop();
|
||||||
});
|
});
|
||||||
|
|
||||||
test('should call preRouterHook', async () => {
|
test('should call preRouterHook', async () => {
|
||||||
let called = 0;
|
let called = 0;
|
||||||
await serverImpl.start(
|
const { stop } = await start(
|
||||||
createTestConfig({
|
createTestConfig({
|
||||||
server: { port: 0 },
|
server: { port: 0 },
|
||||||
preRouterHook: () => {
|
preRouterHook: () => {
|
||||||
@ -85,6 +79,7 @@ test('should call preRouterHook', async () => {
|
|||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
expect(called === 1).toBe(true);
|
expect(called === 1).toBe(true);
|
||||||
|
await stop();
|
||||||
});
|
});
|
||||||
|
|
||||||
test('should call eventHook', async () => {
|
test('should call eventHook', async () => {
|
||||||
@ -95,26 +90,29 @@ test('should call eventHook', async () => {
|
|||||||
called++;
|
called++;
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
await serverImpl.start(config);
|
const { stop } = await start(config);
|
||||||
eventStore.emit('feature-created', {});
|
eventStore.emit('feature-created', {});
|
||||||
expect(called === 1).toBe(true);
|
expect(called === 1).toBe(true);
|
||||||
|
await stop();
|
||||||
});
|
});
|
||||||
|
|
||||||
test('should auto-create server on start()', async () => {
|
test('should auto-create server on start()', async () => {
|
||||||
const { server } = await serverImpl.start(
|
const { server, stop } = await start(
|
||||||
createTestConfig({ server: { port: 0 } }),
|
createTestConfig({ server: { port: 0 } }),
|
||||||
);
|
);
|
||||||
expect(typeof server === 'undefined').toBe(false);
|
expect(typeof server === 'undefined').toBe(false);
|
||||||
|
await stop();
|
||||||
});
|
});
|
||||||
|
|
||||||
test('should not create a server using create()', async () => {
|
test('should not create a server using create()', async () => {
|
||||||
const config = createTestConfig({ server: { port: 0 } });
|
const config = createTestConfig({ server: { port: 0 } });
|
||||||
const { server } = await serverImpl.create(config);
|
const { server, stop } = await create(config);
|
||||||
expect(server).toBeUndefined();
|
expect(server).toBeUndefined();
|
||||||
|
await stop();
|
||||||
});
|
});
|
||||||
|
|
||||||
test('should shutdown the server when calling stop()', async () => {
|
test('should shutdown the server when calling stop()', async () => {
|
||||||
const { server, stop } = await serverImpl.start(
|
const { server, stop } = await start(
|
||||||
createTestConfig({ server: { port: 0 } }),
|
createTestConfig({ server: { port: 0 } }),
|
||||||
);
|
);
|
||||||
await stop();
|
await stop();
|
@ -1,9 +1,7 @@
|
|||||||
'use strict';
|
import { setupApp } from '../../helpers/test-helper';
|
||||||
|
import metricsExample from '../../../examples/client-metrics.json';
|
||||||
const { setupApp } = require('../../helpers/test-helper');
|
import dbInit from '../../helpers/database-init';
|
||||||
const metricsExample = require('../../../examples/client-metrics.json');
|
import getLogger from '../../../fixtures/no-logger';
|
||||||
const dbInit = require('../../helpers/database-init');
|
|
||||||
const getLogger = require('../../../fixtures/no-logger');
|
|
||||||
|
|
||||||
let app;
|
let app;
|
||||||
let db;
|
let db;
|
@ -1,10 +1,8 @@
|
|||||||
'use strict';
|
import faker from 'faker';
|
||||||
|
import { setupApp } from '../../helpers/test-helper';
|
||||||
const faker = require('faker');
|
import dbInit from '../../helpers/database-init';
|
||||||
const { setupApp } = require('../../helpers/test-helper');
|
import getLogger from '../../../fixtures/no-logger';
|
||||||
const dbInit = require('../../helpers/database-init');
|
import version from '../../../../lib/util/version';
|
||||||
const getLogger = require('../../../fixtures/no-logger');
|
|
||||||
const version = require('../../../../lib/util/version');
|
|
||||||
|
|
||||||
const asyncFilter = async (arr, predicate) => {
|
const asyncFilter = async (arr, predicate) => {
|
||||||
const results = await Promise.all(arr.map(predicate));
|
const results = await Promise.all(arr.map(predicate));
|
@ -744,6 +744,11 @@
|
|||||||
"@types/qs" "*"
|
"@types/qs" "*"
|
||||||
"@types/serve-static" "*"
|
"@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":
|
"@types/graceful-fs@^4.1.2":
|
||||||
version "4.1.5"
|
version "4.1.5"
|
||||||
resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz"
|
resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz"
|
||||||
|
Loading…
Reference in New Issue
Block a user