test: fix expected error codes in multiple test

In the e2e tests the global filter must be added via the special provider 'APP_FILTER' and not with useGlobalFilters, because if not the filter breaks, because of the way supertest handles the http-connection.

See: https://github.com/nestjs/nest/issues/1160#issuecomment-468698640

Signed-off-by: Philip Molares <philip.molares@udo.edu>
This commit is contained in:
Philip Molares 2022-01-23 22:23:00 +01:00
parent 796b8294cf
commit 6269c7f7bc
8 changed files with 15 additions and 9 deletions

View file

@ -96,7 +96,7 @@ describe('Alias', () => {
.post(`/api/private/alias`)
.set('Content-Type', 'application/json')
.send(newAliasDto)
.expect(400);
.expect(409);
});
it('because the user is not an owner', async () => {
newAliasDto.newAlias = publicId;

View file

@ -156,7 +156,7 @@ describe('History', () => {
.post('/api/private/me/history')
.set('Content-Type', 'application/json')
.send(JSON.stringify({ history: [brokenEntryDto] }))
.expect(400);
.expect(404);
});
afterEach(async () => {
const historyEntries = await testSetup.historyService.getEntriesByUser(

View file

@ -87,7 +87,7 @@ describe('Media', () => {
.post('/api/private/media')
.attach('file', 'test/private-api/fixtures/test.zip')
.set('HedgeDoc-Note', 'i_dont_exist')
.expect(400);
.expect(404);
await expect(fs.access(uploadPath)).rejects.toBeDefined();
});
it('mediaBackend error', async () => {

View file

@ -123,7 +123,7 @@ describe('Notes', () => {
.set('Content-Type', 'text/markdown')
.send(content)
.expect('Content-Type', /json/)
.expect(400);
.expect(409);
});
});

View file

@ -66,7 +66,7 @@ describe('Alias', () => {
noteIdOrAlias: testAlias,
newAlias: 'testAlias1',
})
.expect(400);
.expect(409);
});
it('because of a forbidden alias', async () => {
await request(testSetup.app.getHttpServer())
@ -88,7 +88,7 @@ describe('Alias', () => {
noteIdOrAlias: testAlias,
newAlias: publicId,
})
.expect(400);
.expect(409);
});
it('because the user is not an owner', async () => {
await request(testSetup.app.getHttpServer())
@ -217,7 +217,6 @@ describe('Alias', () => {
.delete(`/api/v2/alias/${testAlias}`)
.set('Authorization', `Bearer ${testSetup.authTokens[0].secret}`)
.expect(400);
await request(testSetup.app.getHttpServer())
.get(`/api/v2/notes/${secondAlias}`)
.set('Authorization', `Bearer ${testSetup.authTokens[0].secret}`)

View file

@ -79,7 +79,7 @@ describe('Media', () => {
.post('/api/v2/media')
.attach('file', 'test/public-api/fixtures/test.zip')
.set('HedgeDoc-Note', 'i_dont_exist')
.expect(400);
.expect(404);
await expect(fs.access(uploadPath)).rejects.toBeDefined();
});
it('mediaBackend error', async () => {

View file

@ -117,7 +117,7 @@ describe('Notes', () => {
.set('Content-Type', 'text/markdown')
.send(content)
.expect('Content-Type', /json/)
.expect(400);
.expect(409);
});
});

View file

@ -24,6 +24,7 @@ import customizationConfigMock from '../src/config/mock/customization.config.moc
import externalServicesConfigMock from '../src/config/mock/external-services.config.mock';
import mediaConfigMock from '../src/config/mock/media.config.mock';
import noteConfigMock from '../src/config/mock/note.config.mock';
import { ErrorExceptionMapping } from '../src/errors/error-mapping';
import { FrontendConfigModule } from '../src/frontend-config/frontend-config.module';
import { GroupsModule } from '../src/groups/groups.module';
import { HistoryModule } from '../src/history/history.module';
@ -129,6 +130,12 @@ export class TestSetupBuilder {
FrontendConfigModule,
IdentityModule,
],
providers: [
{
provide: 'APP_FILTER',
useClass: ErrorExceptionMapping,
},
],
});
return testSetupBuilder;
}