[Server Integration tests] Enrich integration GraphQL API tests (#7699)
### Description - We are using gql instead of strings to be able to see the graphql code highlighted ### Demo  Fixes #7526 --------- Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com> Co-authored-by: Charles Bochet <charles@twenty.com> Co-authored-by: Charles Bochet <charlesBochet@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
f08b8fda16
commit
58fd34071c
@ -1,45 +0,0 @@
|
||||
import { NestExpressApplication } from '@nestjs/platform-express';
|
||||
import { Test, TestingModule, TestingModuleBuilder } from '@nestjs/testing';
|
||||
|
||||
import { AppModule } from 'src/app.module';
|
||||
|
||||
interface TestingModuleCreatePreHook {
|
||||
(moduleBuilder: TestingModuleBuilder): TestingModuleBuilder;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hook for adding items to nest application
|
||||
*/
|
||||
export type TestingAppCreatePreHook = (
|
||||
app: NestExpressApplication,
|
||||
) => Promise<void>;
|
||||
|
||||
/**
|
||||
* Sets basic integration testing module of app
|
||||
*/
|
||||
export const createApp = async (
|
||||
config: {
|
||||
moduleBuilderHook?: TestingModuleCreatePreHook;
|
||||
appInitHook?: TestingAppCreatePreHook;
|
||||
} = {},
|
||||
): Promise<NestExpressApplication> => {
|
||||
let moduleBuilder: TestingModuleBuilder = Test.createTestingModule({
|
||||
imports: [AppModule],
|
||||
});
|
||||
|
||||
if (config.moduleBuilderHook) {
|
||||
moduleBuilder = config.moduleBuilderHook(moduleBuilder);
|
||||
}
|
||||
|
||||
const moduleFixture: TestingModule = await moduleBuilder.compile();
|
||||
|
||||
const app = moduleFixture.createNestApplication<NestExpressApplication>();
|
||||
|
||||
if (config.appInitHook) {
|
||||
await config.appInitHook(app);
|
||||
}
|
||||
|
||||
await app.init();
|
||||
|
||||
return app;
|
||||
};
|
||||
@ -1,16 +0,0 @@
|
||||
import { JestConfigWithTsJest } from 'ts-jest';
|
||||
import 'tsconfig-paths/register';
|
||||
|
||||
import { createApp } from './create-app';
|
||||
|
||||
export default async (_, projectConfig: JestConfigWithTsJest) => {
|
||||
const app = await createApp({});
|
||||
|
||||
if (!projectConfig.globals) {
|
||||
throw new Error('No globals found in project config');
|
||||
}
|
||||
|
||||
await app.listen(projectConfig.globals.APP_PORT);
|
||||
|
||||
global.app = app;
|
||||
};
|
||||
@ -1,5 +0,0 @@
|
||||
import 'tsconfig-paths/register';
|
||||
|
||||
export default async () => {
|
||||
global.app.close();
|
||||
};
|
||||
Reference in New Issue
Block a user