diff --git a/packages/api/.dockerignore b/packages/api/.dockerignore index db2866f3c..4534f100a 100644 --- a/packages/api/.dockerignore +++ b/packages/api/.dockerignore @@ -6,4 +6,3 @@ Dockerfile .dockerignore *.yaml .secrets*.yaml -test diff --git a/packages/api/.eslintrc b/packages/api/.eslintrc index f2874a383..bc325835a 100644 --- a/packages/api/.eslintrc +++ b/packages/api/.eslintrc @@ -5,5 +5,13 @@ }, "rules": { "@typescript-eslint/no-unsafe-argument": 0 - } + }, + "overrides": [ + { + "files": ["test/**/*.ts"], + "rules": { + "@typescript-eslint/no-unsafe-member-access": 0 + } + } + ] } diff --git a/packages/api/src/services/user.ts b/packages/api/src/services/user.ts index fd62192a5..52efa08e9 100644 --- a/packages/api/src/services/user.ts +++ b/packages/api/src/services/user.ts @@ -64,7 +64,9 @@ export const findUsersById = async (ids: string[]): Promise => { return userRepository.findBy({ id: In(ids) }) } -export const deleteUsers = async (criteria: FindOptionsWhere) => { +export const deleteUsers = async ( + criteria: FindOptionsWhere | string[] +) => { return authTrx( async (t) => t.getRepository(User).delete(criteria), undefined, diff --git a/packages/api/test/resolvers/features.test.ts b/packages/api/test/resolvers/features.test.ts index 6fa3762e9..79fe126fc 100644 --- a/packages/api/test/resolvers/features.test.ts +++ b/packages/api/test/resolvers/features.test.ts @@ -5,8 +5,12 @@ import sinon, { SinonFakeTimers } from 'sinon' import { User } from '../../src/entity/user' import { env } from '../../src/env' import { userRepository } from '../../src/repository/user' -import { createFeature, createFeatures, deleteFeature } from '../../src/services/features' -import { deleteUser } from '../../src/services/user' +import { + createFeature, + createFeatures, + deleteFeature, +} from '../../src/services/features' +import { deleteUser, deleteUsers } from '../../src/services/user' import { createTestUser } from '../db' import { graphqlRequest, request } from '../util' @@ -21,7 +25,7 @@ describe('features resolvers', () => { .post('/local/debug/fake-user-login') .send({ fakeEmail: loginUser.email }) - authToken = res.body.authToken + authToken = res.body.authToken as string }) after(async () => { @@ -124,7 +128,7 @@ describe('features resolvers', () => { after(async () => { // reset opt-in users - Promise.all(users.map((user) => deleteUser(user.id))) + await deleteUsers(users.map((user) => user.id)) // reset feature await deleteFeature({ name: featureName }) }) diff --git a/packages/content-fetch/mocha-config.json b/packages/content-fetch/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/content-fetch/mocha-config.json +++ b/packages/content-fetch/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/content-fetch/test/babel-register.js b/packages/content-fetch/test/babel-register.js deleted file mode 100644 index a6f65f60a..000000000 --- a/packages/content-fetch/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }) diff --git a/packages/content-handler/mocha-config.json b/packages/content-handler/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/content-handler/mocha-config.json +++ b/packages/content-handler/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/content-handler/test/babel-register.js b/packages/content-handler/test/babel-register.js deleted file mode 100644 index a6f65f60a..000000000 --- a/packages/content-handler/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }) diff --git a/packages/import-handler/mocha-config.json b/packages/import-handler/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/import-handler/mocha-config.json +++ b/packages/import-handler/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/import-handler/test/babel-register.js b/packages/import-handler/test/babel-register.js deleted file mode 100644 index 9e872798e..000000000 --- a/packages/import-handler/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default; - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }); \ No newline at end of file diff --git a/packages/import-handler/test/csv/csv.test.ts b/packages/import-handler/test/csv/csv.test.ts index 350231671..69487483d 100644 --- a/packages/import-handler/test/csv/csv.test.ts +++ b/packages/import-handler/test/csv/csv.test.ts @@ -12,8 +12,8 @@ chai.use(chaiString) describe('Test csv importer', () => { let stub: ImportContext - beforeEach(async () => { - stub = await stubImportCtx() + beforeEach(() => { + stub = stubImportCtx() }) afterEach(async () => { diff --git a/packages/import-handler/test/matter/matter_importer.test.ts b/packages/import-handler/test/matter/matter_importer.test.ts index 94017e634..9fd777c37 100644 --- a/packages/import-handler/test/matter/matter_importer.test.ts +++ b/packages/import-handler/test/matter/matter_importer.test.ts @@ -17,7 +17,7 @@ describe('Load a simple _matter_history file', () => { it('should find the URL of each row', async () => { const urls: URL[] = [] const stream = fs.createReadStream('./test/matter/data/_matter_history.csv') - const stub = await stubImportCtx() + const stub = stubImportCtx() stub.urlHandler = (ctx: ImportContext, url): Promise => { urls.push(url) return Promise.resolve() @@ -38,7 +38,7 @@ describe('Load archive file', () => { it('should find the URL of each row', async () => { const urls: URL[] = [] const stream = fs.createReadStream('./test/matter/data/Archive.zip') - const stub = await stubImportCtx() + const stub = stubImportCtx() stub.contentHandler = ( ctx: ImportContext, url: URL, diff --git a/packages/import-handler/test/util.ts b/packages/import-handler/test/util.ts index d90aaa92d..04f7f7117 100644 --- a/packages/import-handler/test/util.ts +++ b/packages/import-handler/test/util.ts @@ -2,8 +2,8 @@ import { Readability } from '@omnivore/readability' import { ArticleSavingRequestStatus, ImportContext } from '../src' import { createRedisClient } from '../src/redis' -export const stubImportCtx = async (): Promise => { - const redisClient = await createRedisClient(process.env.REDIS_URL) +export const stubImportCtx = (): ImportContext => { + const redisClient = createRedisClient(process.env.REDIS_URL) return { userId: '', diff --git a/packages/inbound-email-handler/mocha-config.json b/packages/inbound-email-handler/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/inbound-email-handler/mocha-config.json +++ b/packages/inbound-email-handler/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/inbound-email-handler/test/babel-register.js b/packages/inbound-email-handler/test/babel-register.js deleted file mode 100644 index a6f65f60a..000000000 --- a/packages/inbound-email-handler/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }) diff --git a/packages/integration-handler/mocha-config.json b/packages/integration-handler/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/integration-handler/mocha-config.json +++ b/packages/integration-handler/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/integration-handler/test/babel-register.js b/packages/integration-handler/test/babel-register.js deleted file mode 100644 index 9e872798e..000000000 --- a/packages/integration-handler/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default; - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }); \ No newline at end of file diff --git a/packages/pdf-handler/mocha-config.json b/packages/pdf-handler/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/pdf-handler/mocha-config.json +++ b/packages/pdf-handler/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/pdf-handler/test/babel-register.js b/packages/pdf-handler/test/babel-register.js deleted file mode 100644 index 9e872798e..000000000 --- a/packages/pdf-handler/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default; - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }); \ No newline at end of file diff --git a/packages/puppeteer-parse/mocha-config.json b/packages/puppeteer-parse/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/puppeteer-parse/mocha-config.json +++ b/packages/puppeteer-parse/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/puppeteer-parse/test/babel-register.js b/packages/puppeteer-parse/test/babel-register.js deleted file mode 100644 index a6f65f60a..000000000 --- a/packages/puppeteer-parse/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }) diff --git a/packages/queue-manager/mocha-config.json b/packages/queue-manager/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/queue-manager/mocha-config.json +++ b/packages/queue-manager/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/queue-manager/test/babel-register.js b/packages/queue-manager/test/babel-register.js deleted file mode 100644 index a6f65f60a..000000000 --- a/packages/queue-manager/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }) diff --git a/packages/rss-handler/mocha-config.json b/packages/rss-handler/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/rss-handler/mocha-config.json +++ b/packages/rss-handler/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/rss-handler/test/babel-register.js b/packages/rss-handler/test/babel-register.js deleted file mode 100644 index a6f65f60a..000000000 --- a/packages/rss-handler/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }) diff --git a/packages/rule-handler/mocha-config.json b/packages/rule-handler/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/rule-handler/mocha-config.json +++ b/packages/rule-handler/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/rule-handler/test/babel-register.js b/packages/rule-handler/test/babel-register.js deleted file mode 100644 index a6f65f60a..000000000 --- a/packages/rule-handler/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }) diff --git a/packages/text-to-speech/mocha-config.json b/packages/text-to-speech/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/text-to-speech/mocha-config.json +++ b/packages/text-to-speech/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/text-to-speech/test/babel-register.js b/packages/text-to-speech/test/babel-register.js deleted file mode 100644 index a6f65f60a..000000000 --- a/packages/text-to-speech/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] }) diff --git a/packages/thumbnail-handler/mocha-config.json b/packages/thumbnail-handler/mocha-config.json index 44d1d24c1..5a2631f42 100644 --- a/packages/thumbnail-handler/mocha-config.json +++ b/packages/thumbnail-handler/mocha-config.json @@ -1,5 +1,4 @@ { "extension": ["ts"], - "spec": "test/**/*.test.ts", - "require": "test/babel-register.js" - } \ No newline at end of file + "spec": "test/**/*.test.ts" + } diff --git a/packages/thumbnail-handler/test/babel-register.js b/packages/thumbnail-handler/test/babel-register.js deleted file mode 100644 index a6f65f60a..000000000 --- a/packages/thumbnail-handler/test/babel-register.js +++ /dev/null @@ -1,3 +0,0 @@ -const register = require('@babel/register').default - -register({ extensions: ['.ts', '.tsx', '.js', '.jsx'] })