diff options
| author | Kagami Sascha Rosylight <saschanaz@outlook.com> | 2022-12-14 14:26:25 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-12-14 14:26:25 +0900 |
| commit | e8a49c9c9e6d818f131f3afa8e9630ed08a13a31 (patch) | |
| tree | a2d93e5730635b3a9683bb5995af044a4e3ded48 | |
| parent | fix(client): Downgrade to Vite v3 (#9313) (diff) | |
| download | misskey-e8a49c9c9e6d818f131f3afa8e9630ed08a13a31.tar.gz misskey-e8a49c9c9e6d818f131f3afa8e9630ed08a13a31.tar.bz2 misskey-e8a49c9c9e6d818f131f3afa8e9630ed08a13a31.zip | |
Fix MetaService unit tests (#9319)
| -rw-r--r-- | packages/backend/jest.config.cjs | 2 | ||||
| -rw-r--r-- | packages/backend/test/unit/MetaService.ts | 20 |
2 files changed, 5 insertions, 17 deletions
diff --git a/packages/backend/jest.config.cjs b/packages/backend/jest.config.cjs index 61f408c1cb..f0a3dc16c2 100644 --- a/packages/backend/jest.config.cjs +++ b/packages/backend/jest.config.cjs @@ -115,7 +115,7 @@ module.exports = { resolver: './jest-resolver.cjs', // Automatically restore mock state between every test - // restoreMocks: false, + restoreMocks: true, // The root directory that Jest should scan for tests and modules within // rootDir: undefined, diff --git a/packages/backend/test/unit/MetaService.ts b/packages/backend/test/unit/MetaService.ts index dbb5a24273..26649d92a4 100644 --- a/packages/backend/test/unit/MetaService.ts +++ b/packages/backend/test/unit/MetaService.ts @@ -10,14 +10,10 @@ import { MetaService } from '@/core/MetaService.js'; import { CoreModule } from '@/core/CoreModule.js'; import type { DataSource } from 'typeorm'; import type { TestingModule } from '@nestjs/testing'; -import type { MockFunctionMetadata } from 'jest-mock'; - -const moduleMocker = new ModuleMocker(global); describe('MetaService', () => { let app: TestingModule; let metaService: MetaService; - let metasRepository: MetasRepository; beforeAll(async () => { app = await Test.createTestingModule({ @@ -30,40 +26,32 @@ describe('MetaService', () => { app.enableShutdownHooks(); metaService = app.get<MetaService>(MetaService, { strict: false }); - metasRepository = app.get<MetasRepository>(DI.metasRepository, { strict: false }); + + // Make it cached + await metaService.fetch(); }); afterAll(async () => { await app.close(); }); - /* なんか動かない it('fetch (cache)', async () => { const db = app.get<DataSource>(DI.db); - const originalFunction = db.transaction; const spy = jest.spyOn(db, 'transaction'); - spy.mockImplementation((...args) => originalFunction(...args)); const result = await metaService.fetch(); expect(result.id).toBe('x'); expect(spy).toHaveBeenCalledTimes(0); - - spy.mockRestore(); }); it('fetch (force)', async () => { const db = app.get<DataSource>(DI.db); - const originalFunction = db.transaction; const spy = jest.spyOn(db, 'transaction'); - // 何故かここで無限再帰する db.transaction がspyのままになっている? - spy.mockImplementation((...args) => originalFunction(...args)); const result = await metaService.fetch(true); expect(result.id).toBe('x'); expect(spy).toHaveBeenCalledTimes(1); - - spy.mockRestore(); - });*/ + }); }); |