summaryrefslogtreecommitdiff
path: root/packages/backend/test/e2e/fetch-validate-ap-deny.ts
blob: 434a9fe209b55658ba513eaa2bb6afaf7bc1d3cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/*
 * SPDX-FileCopyrightText: syuilo and misskey-project
 * SPDX-License-Identifier: AGPL-3.0-only
 */

process.env.NODE_ENV = 'test';

import { validateContentTypeSetAsActivityPub, validateContentTypeSetAsJsonLD } from '@/core/activitypub/misc/validator.js';
import { signup, uploadFile, relativeFetch } from '../utils.js';
import type * as misskey from 'misskey-js';

describe('validateContentTypeSetAsActivityPub/JsonLD (deny case)', () => {
	let alice: misskey.entities.SignupResponse;
	let aliceUploadedFile: any;

	beforeAll(async () => {
		alice = await signup({ username: 'alice' });
		aliceUploadedFile = await uploadFile(alice);
	}, 1000 * 60 * 2);

	test('ActivityStreams: ファイルはエラーになる', async () => {
		const res = await relativeFetch(aliceUploadedFile.webpublicUrl);

		function doValidate() {
			validateContentTypeSetAsActivityPub(res);
		}

		expect(doValidate).toThrow('Content type is not');
	});

	test('JSON-LD: ファイルはエラーになる', async () => {
		const res = await relativeFetch(aliceUploadedFile.webpublicUrl);

		function doValidate() {
			validateContentTypeSetAsJsonLD(res);
		}

		expect(doValidate).toThrow('Content type is not');
	});
});