chore: Update dependencies

This commit is contained in:
Joachim Van Herwegen
2021-06-29 11:29:38 +02:00
parent d01382d36e
commit 5edbbc1958
37 changed files with 2904 additions and 3617 deletions

View File

@@ -37,7 +37,6 @@ export class IdentityTestState {
* @param body - Body to send along.
* @param contentType - Content-Type of the body.
*/
// eslint-disable-next-line default-param-last
public async fetchIdp(url: string, method = 'GET', body?: string, contentType?: string): Promise<Response> {
const options = { method, headers: { cookie: this.cookie }, body, redirect: 'manual' } as any;
if (contentType) {

View File

@@ -1,11 +1,12 @@
import { createResponse } from 'node-mocks-http';
import { ConstantMetadataWriter } from '../../../../../src/ldp/http/metadata/ConstantMetadataWriter';
import type { HttpResponse } from '../../../../../src/server/HttpResponse';
describe('A ConstantMetadataWriter', (): void => {
const writer = new ConstantMetadataWriter({ 'custom-Header': 'X', other: 'Y' });
it('adds new headers.', async(): Promise<void> => {
const response = createResponse();
const response = createResponse() as HttpResponse;
await expect(writer.handle({ response })).resolves.toBeUndefined();
@@ -13,7 +14,7 @@ describe('A ConstantMetadataWriter', (): void => {
});
it('extends existing headers.', async(): Promise<void> => {
const response = createResponse();
const response = createResponse() as HttpResponse;
response.setHeader('Other', 'A');
await expect(writer.handle({ response })).resolves.toBeUndefined();

View File

@@ -1,13 +1,14 @@
import { createResponse } from 'node-mocks-http';
import { LinkRelMetadataWriter } from '../../../../../src/ldp/http/metadata/LinkRelMetadataWriter';
import { RepresentationMetadata } from '../../../../../src/ldp/representation/RepresentationMetadata';
import type { HttpResponse } from '../../../../../src/server/HttpResponse';
import { LDP, RDF } from '../../../../../src/util/Vocabularies';
describe('A LinkRelMetadataWriter', (): void => {
const writer = new LinkRelMetadataWriter({ [RDF.type]: 'type', dummy: 'dummy' });
it('adds the correct link headers.', async(): Promise<void> => {
const response = createResponse();
const response = createResponse() as HttpResponse;
const metadata = new RepresentationMetadata({ [RDF.type]: LDP.terms.Resource, unused: 'text' });
await expect(writer.handle({ response, metadata })).resolves.toBeUndefined();
expect(response.getHeaders()).toEqual({ link: `<${LDP.Resource}>; rel="type"` });

View File

@@ -1,13 +1,14 @@
import { createResponse } from 'node-mocks-http';
import { MappedMetadataWriter } from '../../../../../src/ldp/http/metadata/MappedMetadataWriter';
import { RepresentationMetadata } from '../../../../../src/ldp/representation/RepresentationMetadata';
import type { HttpResponse } from '../../../../../src/server/HttpResponse';
import { CONTENT_TYPE } from '../../../../../src/util/Vocabularies';
describe('A MappedMetadataWriter', (): void => {
const writer = new MappedMetadataWriter({ [CONTENT_TYPE]: 'content-type', dummy: 'dummy' });
it('adds metadata to the corresponding header.', async(): Promise<void> => {
const response = createResponse();
const response = createResponse() as HttpResponse;
const metadata = new RepresentationMetadata({ [CONTENT_TYPE]: 'text/turtle', unused: 'text' });
await expect(writer.handle({ response, metadata })).resolves.toBeUndefined();
expect(response.getHeaders()).toEqual({ 'content-type': 'text/turtle' });

View File

@@ -9,7 +9,7 @@ describe('A WacAllowMetadataWriter', (): void => {
let response: HttpResponse;
beforeEach(async(): Promise<void> => {
response = createResponse();
response = createResponse() as HttpResponse;
});
it('adds no header if there is no relevant metadata.', async(): Promise<void> => {

View File

@@ -10,7 +10,7 @@ describe('A WwwAuthMetadataWriter', (): void => {
let response: HttpResponse;
beforeEach(async(): Promise<void> => {
response = createResponse();
response = createResponse() as HttpResponse;
});
it('adds no header if there is no relevant metadata.', async(): Promise<void> => {

View File

@@ -112,8 +112,8 @@ describe('A RepresentationMetadata', (): void => {
metadata.setMetadata(other);
expect(metadata.identifier).toEqual(other.identifier);
expect(metadata.quads()).toBeRdfIsomorphic(inputQuads.concat([
quad(identifier, namedNode('test:pred'), literal('objVal')) ]));
expect(metadata.quads()).toBeRdfIsomorphic([ ...inputQuads,
quad(identifier, namedNode('test:pred'), literal('objVal')) ]);
});
it('updates its identifier when copying metadata.', async(): Promise<void> => {
@@ -134,7 +134,7 @@ describe('A RepresentationMetadata', (): void => {
quad(namedNode('random'), namedNode('new'), namedNode('triple')),
];
metadata.addQuads(newQuads);
expect(metadata.quads()).toBeRdfIsomorphic(newQuads.concat(inputQuads));
expect(metadata.quads()).toBeRdfIsomorphic([ ...newQuads, ...inputQuads ]);
});
it('can remove quads.', async(): Promise<void> => {
@@ -145,13 +145,13 @@ describe('A RepresentationMetadata', (): void => {
it('can add a single value for a predicate.', async(): Promise<void> => {
const newQuad = quad(identifier, namedNode('new'), namedNode('triple'));
metadata.add(newQuad.predicate as NamedNode, newQuad.object as NamedNode);
expect(metadata.quads()).toBeRdfIsomorphic([ newQuad ].concat(inputQuads));
expect(metadata.quads()).toBeRdfIsomorphic([ newQuad, ...inputQuads ]);
});
it('can add single values as string.', async(): Promise<void> => {
const newQuad = quad(identifier, namedNode('new'), literal('triple'));
metadata.add(newQuad.predicate as NamedNode, newQuad.object.value);
expect(metadata.quads()).toBeRdfIsomorphic([ newQuad ].concat(inputQuads));
expect(metadata.quads()).toBeRdfIsomorphic([ newQuad, ...inputQuads ]);
});
it('can add multiple values for a predicate.', async(): Promise<void> => {
@@ -160,7 +160,7 @@ describe('A RepresentationMetadata', (): void => {
quad(identifier, namedNode('new'), namedNode('triple2')),
];
metadata.add(namedNode('new'), [ namedNode('triple'), namedNode('triple2') ]);
expect(metadata.quads()).toBeRdfIsomorphic(newQuads.concat(inputQuads));
expect(metadata.quads()).toBeRdfIsomorphic([ ...newQuads, ...inputQuads ]);
});
it('can remove a single value for a predicate.', async(): Promise<void> => {

View File

@@ -1,4 +1,5 @@
import { createRequest, createResponse } from 'node-mocks-http';
import type { HttpResponse } from '../../../../src/server/HttpResponse';
import { CorsHandler } from '../../../../src/server/middleware/CorsHandler';
import { guardStream } from '../../../../src/util/GuardedStream';
@@ -7,7 +8,7 @@ describe('a CorsHandler', (): void => {
const handler = new CorsHandler();
const request = guardStream(createRequest());
const response = createResponse();
const response = createResponse() as HttpResponse;
await handler.handleSafe({ request, response });
expect(response.getHeaders()).toEqual(expect.objectContaining({
@@ -23,7 +24,7 @@ describe('a CorsHandler', (): void => {
origin: 'example.org',
},
}));
const response = createResponse();
const response = createResponse() as HttpResponse;
await handler.handleSafe({ request, response });
expect(response.getHeaders()).toEqual(expect.objectContaining({
@@ -37,7 +38,7 @@ describe('a CorsHandler', (): void => {
});
const request = guardStream(createRequest());
const response = createResponse();
const response = createResponse() as HttpResponse;
await handler.handleSafe({ request, response });
expect(response.getHeaders()).toEqual(expect.objectContaining({

View File

@@ -1,4 +1,5 @@
import { createRequest, createResponse } from 'node-mocks-http';
import type { HttpResponse } from '../../../../src/server/HttpResponse';
import { HeaderHandler } from '../../../../src/server/middleware/HeaderHandler';
import { guardStream } from '../../../../src/util/GuardedStream';
@@ -8,7 +9,7 @@ describe('a HeaderHandler', (): void => {
const handler = new HeaderHandler(headers);
const request = guardStream(createRequest());
const response = createResponse();
const response = createResponse() as HttpResponse;
await handler.handleSafe({ request, response });
expect(response.getHeaders()).toEqual(expect.objectContaining(headers));

View File

@@ -122,7 +122,7 @@ describe('A StaticAssetHandler', (): void => {
it('throws a 404 when the asset does not exist.', async(): Promise<void> => {
const request = { method: 'GET', url: '/foo/bar/main' };
const response = createResponse({ eventEmitter: EventEmitter });
const error = new Error() as SystemError;
const error = new Error('no file') as SystemError;
error.code = 'ENOENT';
const stream = new PassThrough();
stream._read = (): any => stream.emit('error', error);
@@ -135,7 +135,7 @@ describe('A StaticAssetHandler', (): void => {
it('throws a 404 when the asset is folder.', async(): Promise<void> => {
const request = { method: 'GET', url: '/foo/bar/main' };
const response = createResponse({ eventEmitter: EventEmitter });
const error = new Error() as SystemError;
const error = new Error('is directory') as SystemError;
error.code = 'EISDIR';
const stream = new PassThrough();
stream._read = (): any => stream.emit('error', error);
@@ -149,7 +149,7 @@ describe('A StaticAssetHandler', (): void => {
const request = { method: 'GET', url: '/foo/bar/main' };
const response = createResponse({ eventEmitter: EventEmitter });
const responseEnd = new Promise((resolve): any => response.on('end', resolve));
const error = new Error();
const error = new Error('random error');
const stream = new PassThrough();
stream._read = (): any => stream.emit('error', error);
createReadStream.mockReturnValueOnce(stream as any);

View File

@@ -1,31 +1,32 @@
import { createResponse } from 'node-mocks-http';
import type { HttpResponse } from '../../../../src/server/HttpResponse';
import { WebSocketAdvertiser } from '../../../../src/server/middleware/WebSocketAdvertiser';
describe('A WebSocketAdvertiser', (): void => {
it('writes a ws: socket when given an http: URL.', async(): Promise<void> => {
const writer = new WebSocketAdvertiser('http://test.example/');
const response = createResponse();
const response = createResponse() as HttpResponse;
await writer.handle({ response } as any);
expect(response.getHeaders()).toEqual({ 'updates-via': 'ws://test.example/' });
});
it('writes a ws: socket when given a ws: URL.', async(): Promise<void> => {
const writer = new WebSocketAdvertiser('ws://test.example/');
const response = createResponse();
const response = createResponse() as HttpResponse;
await writer.handle({ response } as any);
expect(response.getHeaders()).toEqual({ 'updates-via': 'ws://test.example/' });
});
it('writes a wss: socket when given an https: URL.', async(): Promise<void> => {
const writer = new WebSocketAdvertiser('https://test.example/');
const response = createResponse();
const response = createResponse() as HttpResponse;
await writer.handle({ response } as any);
expect(response.getHeaders()).toEqual({ 'updates-via': 'wss://test.example/' });
});
it('writes a wss: socket when given a wss: URL.', async(): Promise<void> => {
const writer = new WebSocketAdvertiser('wss://test.example/');
const response = createResponse();
const response = createResponse() as HttpResponse;
await writer.handle({ response } as any);
expect(response.getHeaders()).toEqual({ 'updates-via': 'wss://test.example/' });
});

View File

@@ -9,7 +9,7 @@ describe('RenderEjsHandler', (): void => {
let templateFile: string;
beforeEach((): void => {
response = createResponse();
response = createResponse() as HttpResponse;
templatePath = joinFilePath(__dirname, '../../../assets/idp');
templateFile = 'testHtml.ejs';
});

View File

@@ -15,7 +15,7 @@ describe('RouterHandler', (): void => {
genericRequest = guardStream(createRequest({
url: '/test',
}));
genericResponse = createResponse();
genericResponse = createResponse() as HttpResponse;
genericInput = {
request: genericRequest,
response: genericResponse,

View File

@@ -265,7 +265,7 @@ describe('A SparqlDataAccessor', (): void => {
fetchError = 'error';
await expect(accessor.getMetadata({ path: 'http://identifier' })).rejects.toBe(fetchError);
fetchError = new Error();
fetchError = new Error('read error');
await expect(accessor.getMetadata({ path: 'http://identifier' })).rejects.toThrow(fetchError);
fetchError = undefined;
@@ -278,7 +278,7 @@ describe('A SparqlDataAccessor', (): void => {
updateError = 'error';
await expect(accessor.writeContainer(identifier, metadata)).rejects.toBe(updateError);
updateError = new Error();
updateError = new Error('write error');
await expect(accessor.writeContainer(identifier, metadata)).rejects.toThrow(updateError);
updateError = undefined;

View File

@@ -19,7 +19,7 @@ describe('An ErrorToQuadConverter', (): void => {
});
it('does not support multiple errors.', async(): Promise<void> => {
const representation = new BasicRepresentation([ new Error(), new Error() ], 'internal/error', false);
const representation = new BasicRepresentation([ new Error('a'), new Error('b') ], 'internal/error', false);
const prom = converter.handle({ identifier, representation, preferences });
await expect(prom).rejects.toThrow('Only single errors are supported.');
await expect(prom).rejects.toThrow(InternalServerError);

View File

@@ -32,7 +32,7 @@ describe('An ErrorToTemplateConverter', (): void => {
});
it('does not support multiple errors.', async(): Promise<void> => {
const representation = new BasicRepresentation([ new Error(), new Error() ], 'internal/error', false);
const representation = new BasicRepresentation([ new Error('a'), new Error('b') ], 'internal/error', false);
const prom = converter.handle({ identifier, representation, preferences });
await expect(prom).rejects.toThrow('Only single errors are supported.');
await expect(prom).rejects.toThrow(InternalServerError);

View File

@@ -105,10 +105,10 @@ describe('A SparqlUpdatePatchHandler', (): void => {
it('handles INSERT DATA updates.', async(): Promise<void> => {
await handle(fulfilledDataInsert);
expect(await basicChecks(startQuads.concat(
[ quad(namedNode('http://test.com/s1'), namedNode('http://test.com/p1'), namedNode('http://test.com/o1')),
quad(namedNode('http://test.com/s2'), namedNode('http://test.com/p2'), namedNode('http://test.com/o2')) ],
))).toBe(true);
expect(await basicChecks([ ...startQuads,
quad(namedNode('http://test.com/s1'), namedNode('http://test.com/p1'), namedNode('http://test.com/o1')),
quad(namedNode('http://test.com/s2'), namedNode('http://test.com/p2'), namedNode('http://test.com/o2')),
])).toBe(true);
});
it('handles DELETE DATA updates.', async(): Promise<void> => {

View File

@@ -4,7 +4,6 @@ import { PassThrough } from 'stream';
import streamifyArray from 'streamify-array';
import type { SystemError } from '../../src/util/errors/SystemError';
/* eslint-disable @typescript-eslint/naming-convention */
const portNames = [
// Integration
'DynamicPods',