TestSetup: Initialize full app and session middleware

Signed-off-by: David Mehren <git@herrmehren.de>
This commit is contained in:
David Mehren 2021-10-21 19:51:23 +02:00
parent 39efdb21ca
commit b73ac2f99b
No known key found for this signature in database
GPG key ID: 185982BA4C42B7C3

View file

@ -14,24 +14,33 @@ import { PublicApiModule } from '../src/api/public/public-api.module';
import { AuthModule } from '../src/auth/auth.module'; import { AuthModule } from '../src/auth/auth.module';
import { MockAuthGuard } from '../src/auth/mock-auth.guard'; import { MockAuthGuard } from '../src/auth/mock-auth.guard';
import { TokenAuthGuard } from '../src/auth/token.strategy'; import { TokenAuthGuard } from '../src/auth/token.strategy';
import { AuthorsModule } from '../src/authors/authors.module';
import { AuthConfig } from '../src/config/auth.config';
import appConfigMock from '../src/config/mock/app.config.mock'; import appConfigMock from '../src/config/mock/app.config.mock';
import authConfigMock from '../src/config/mock/auth.config.mock'; import authConfigMock from '../src/config/mock/auth.config.mock';
import customizationConfigMock from '../src/config/mock/customization.config.mock'; import customizationConfigMock from '../src/config/mock/customization.config.mock';
import externalServicesConfigMock from '../src/config/mock/external-services.config.mock'; import externalServicesConfigMock from '../src/config/mock/external-services.config.mock';
import mediaConfigMock from '../src/config/mock/media.config.mock'; import mediaConfigMock from '../src/config/mock/media.config.mock';
import { FrontendConfigModule } from '../src/frontend-config/frontend-config.module';
import { GroupsModule } from '../src/groups/groups.module'; import { GroupsModule } from '../src/groups/groups.module';
import { HistoryModule } from '../src/history/history.module'; import { HistoryModule } from '../src/history/history.module';
import { HistoryService } from '../src/history/history.service'; import { HistoryService } from '../src/history/history.service';
import { IdentityModule } from '../src/identity/identity.module';
import { IdentityService } from '../src/identity/identity.service'; import { IdentityService } from '../src/identity/identity.service';
import { ConsoleLoggerService } from '../src/logger/console-logger.service';
import { LoggerModule } from '../src/logger/logger.module'; import { LoggerModule } from '../src/logger/logger.module';
import { MediaModule } from '../src/media/media.module'; import { MediaModule } from '../src/media/media.module';
import { MediaService } from '../src/media/media.service'; import { MediaService } from '../src/media/media.service';
import { MonitoringModule } from '../src/monitoring/monitoring.module';
import { AliasService } from '../src/notes/alias.service'; import { AliasService } from '../src/notes/alias.service';
import { NotesModule } from '../src/notes/notes.module'; import { NotesModule } from '../src/notes/notes.module';
import { NotesService } from '../src/notes/notes.service'; import { NotesService } from '../src/notes/notes.service';
import { PermissionsModule } from '../src/permissions/permissions.module'; import { PermissionsModule } from '../src/permissions/permissions.module';
import { RevisionsModule } from '../src/revisions/revisions.module';
import { UsersModule } from '../src/users/users.module'; import { UsersModule } from '../src/users/users.module';
import { UsersService } from '../src/users/users.service'; import { UsersService } from '../src/users/users.service';
import { setupSessionMiddleware } from '../src/utils/session';
import { setupValidationPipe } from '../src/utils/setup-pipes';
export class TestSetup { export class TestSetup {
moduleRef: TestingModule; moduleRef: TestingModule;
@ -78,16 +87,21 @@ export class TestSetup {
externalServicesConfigMock, externalServicesConfigMock,
], ],
}), }),
NotesModule,
UsersModule,
RevisionsModule,
AuthorsModule,
PublicApiModule, PublicApiModule,
PrivateApiModule, PrivateApiModule,
NotesModule, HistoryModule,
MonitoringModule,
PermissionsModule, PermissionsModule,
GroupsModule, GroupsModule,
LoggerModule, LoggerModule,
AuthModule,
UsersModule,
MediaModule, MediaModule,
HistoryModule, AuthModule,
FrontendConfigModule,
IdentityModule,
], ],
}) })
.overrideGuard(TokenAuthGuard) .overrideGuard(TokenAuthGuard)
@ -110,6 +124,11 @@ export class TestSetup {
testSetup.app = testSetup.moduleRef.createNestApplication(); testSetup.app = testSetup.moduleRef.createNestApplication();
setupSessionMiddleware(
testSetup.app,
testSetup.configService.get<AuthConfig>('authConfig'),
);
return testSetup; return testSetup;
} }
} }