105 lines
3.3 KiB
JavaScript
105 lines
3.3 KiB
JavaScript
var request = require('supertest');
|
|
const jsonfile = require('jsonfile');
|
|
const Ajv = require('ajv-draft-04');
|
|
const sendConfigChangeRequest = require('./lib/admin').sendConfigChangeRequest;
|
|
|
|
request = request('http://127.0.0.1:8080');
|
|
|
|
var ajv = new Ajv();
|
|
var nodeInfoSchema = jsonfile.readFileSync('schema/nodeinfo_2.0.json');
|
|
|
|
test('disable federation', async (done) => {
|
|
const res = await sendConfigChangeRequest('federation/enable', false);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /.well-known/webfinger when federation is disabled', async (done) => {
|
|
const res = request.get('/.well-known/webfinger').expect(405);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /.well-known/host-meta when federation is disabled', async (done) => {
|
|
const res = request.get('/.well-known/host-meta').expect(405);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /.well-known/nodeinfo when federation is disabled', async (done) => {
|
|
const res = request.get('/.well-known/nodeinfo').expect(405);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /.well-known/x-nodeinfo2 when federation is disabled', async (done) => {
|
|
const res = request.get('/.well-known/x-nodeinfo2').expect(405);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /nodeinfo/2.0 when federation is disabled', async (done) => {
|
|
const res = request.get('/nodeinfo/2.0').expect(405);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /api/v1/instance when federation is disabled', async (done) => {
|
|
const res = request.get('/api/v1/instance').expect(405);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /federation/user/ when federation is disabled', async (done) => {
|
|
const res = request.get('/federation/user/').expect(405);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /federation/ when federation is disabled', async (done) => {
|
|
const res = request.get('/federation/').expect(405);
|
|
done();
|
|
});
|
|
|
|
test('enable federation', async (done) => {
|
|
const res = await sendConfigChangeRequest('federation/enable', true);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /.well-known/webfinger when federation is enabled', async (done) => {
|
|
const res = request.get('/.well-known/webfinger').expect(200);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /.well-known/host-meta when federation is enabled', async (done) => {
|
|
const res = request.get('/.well-known/host-meta').expect(200);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /.well-known/nodeinfo when federation is enabled', async (done) => {
|
|
const res = request.get('/.well-known/nodeinfo').expect(200);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /.well-known/x-nodeinfo2 when federation is enabled', async (done) => {
|
|
const res = request.get('/.well-known/x-nodeinfo2').expect(200);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /nodeinfo/2.0 when federation is enabled', async (done) => {
|
|
const res = request
|
|
.get('/nodeinfo/2.0')
|
|
.expect(200)
|
|
.then((res) => {
|
|
expect(ajv.validate(nodeInfoSchema, res.body)).toBe(true);
|
|
done();
|
|
});
|
|
});
|
|
|
|
test('verify responses of /api/v1/instance when federation is enabled', async (done) => {
|
|
const res = request.get('/api/v1/instance').expect(200);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /federation/user/ when federation is enabled', async (done) => {
|
|
const res = request.get('/federation/user/').expect(200);
|
|
done();
|
|
});
|
|
|
|
test('verify responses of /federation/ when federation is enabled', async (done) => {
|
|
const res = request.get('/federation/').expect(200);
|
|
done();
|
|
});
|