fix: Remove duplicate checks

These were added when setting TypeScript settings to strict,
but should not be needed due to how AsyncHandlers should be used.
This commit is contained in:
Joachim Van Herwegen 2020-08-25 15:00:45 +02:00
parent bca4d06c9a
commit 4bc1dcdd1b
4 changed files with 2 additions and 16 deletions

View File

@ -42,9 +42,6 @@ export class SimpleRequestParser extends RequestParser {
const preferences = await this.preferenceParser.handleSafe(input); const preferences = await this.preferenceParser.handleSafe(input);
const body = await this.bodyParser.handleSafe(input); const body = await this.bodyParser.handleSafe(input);
if (!input.method) { return { method: input.method!, target, preferences, body };
throw new Error('Missing method.');
}
return { method: input.method, target, preferences, body };
} }
} }

View File

@ -26,10 +26,7 @@ export class SimplePostOperationHandler extends OperationHandler {
} }
public async handle(input: Operation): Promise<ResponseDescription> { public async handle(input: Operation): Promise<ResponseDescription> {
if (!input.body) { const identifier = await this.store.addResource(input.target, input.body!);
throw new UnsupportedHttpError('POST operations require a body.');
}
const identifier = await this.store.addResource(input.target, input.body);
return { identifier }; return { identifier };
} }
} }

View File

@ -29,10 +29,6 @@ describe('A SimpleRequestParser', (): void => {
await expect(requestParser.canHandle({ url: 'url' } as any)).rejects.toThrow('Missing method.'); await expect(requestParser.canHandle({ url: 'url' } as any)).rejects.toThrow('Missing method.');
}); });
it('errors if called without method.', async(): Promise<void> => {
await expect(requestParser.handle({ url: 'url' } as any)).rejects.toThrow('Missing method.');
});
it('returns the output of all input parsers after calling handle.', async(): Promise<void> => { it('returns the output of all input parsers after calling handle.', async(): Promise<void> => {
await expect(requestParser.handle({ url: 'url', method: 'GET' } as any)).resolves.toEqual({ await expect(requestParser.handle({ url: 'url', method: 'GET' } as any)).resolves.toEqual({
method: 'GET', method: 'GET',

View File

@ -18,10 +18,6 @@ describe('A SimplePostOperationHandler', (): void => {
await expect(handler.canHandle({ method: 'POST' } as Operation)).rejects.toThrow(UnsupportedHttpError); await expect(handler.canHandle({ method: 'POST' } as Operation)).rejects.toThrow(UnsupportedHttpError);
}); });
it('errors if no body is present.', async(): Promise<void> => {
await expect(handler.handle({ method: 'POST' } as Operation)).rejects.toThrow(UnsupportedHttpError);
});
it('adds the given representation to the store and returns the new identifier.', async(): Promise<void> => { it('adds the given representation to the store and returns the new identifier.', async(): Promise<void> => {
await expect(handler.handle({ method: 'POST', body: { dataType: 'test' }} as Operation)) await expect(handler.handle({ method: 'POST', body: { dataType: 'test' }} as Operation))
.resolves.toEqual({ identifier: { path: 'newPath' }}); .resolves.toEqual({ identifier: { path: 'newPath' }});