Add ability to manually approves instance followers in REST API

This commit is contained in:
Chocobozzz
2019-04-08 15:18:04 +02:00
parent 5b9c965d5a
commit 14893eb71c
16 changed files with 261 additions and 30 deletions

View File

@@ -90,7 +90,8 @@ describe('Test config API validators', function () {
},
followers: {
instance: {
enabled: false
enabled: false,
manualApproval: true
}
}
}

View File

@@ -184,6 +184,86 @@ describe('Test server follows API validators', function () {
})
})
describe('When accepting a follower', function () {
const path = '/api/v1/server/followers'
it('Should fail with an invalid token', async function () {
await makePostBodyRequest({
url: server.url,
path: path + '/toto@localhost:9002/accept',
token: 'fake_token',
statusCodeExpected: 401
})
})
it('Should fail if the user is not an administrator', async function () {
await makePostBodyRequest({
url: server.url,
path: path + '/toto@localhost:9002/accept',
token: userAccessToken,
statusCodeExpected: 403
})
})
it('Should fail with an invalid follower', async function () {
await makePostBodyRequest({
url: server.url,
path: path + '/toto/accept',
token: server.accessToken,
statusCodeExpected: 400
})
})
it('Should fail with an unknown follower', async function () {
await makePostBodyRequest({
url: server.url,
path: path + '/toto@localhost:9003/accept',
token: server.accessToken,
statusCodeExpected: 404
})
})
})
describe('When rejecting a follower', function () {
const path = '/api/v1/server/followers'
it('Should fail with an invalid token', async function () {
await makePostBodyRequest({
url: server.url,
path: path + '/toto@localhost:9002/reject',
token: 'fake_token',
statusCodeExpected: 401
})
})
it('Should fail if the user is not an administrator', async function () {
await makePostBodyRequest({
url: server.url,
path: path + '/toto@localhost:9002/reject',
token: userAccessToken,
statusCodeExpected: 403
})
})
it('Should fail with an invalid follower', async function () {
await makePostBodyRequest({
url: server.url,
path: path + '/toto/reject',
token: server.accessToken,
statusCodeExpected: 400
})
})
it('Should fail with an unknown follower', async function () {
await makePostBodyRequest({
url: server.url,
path: path + '/toto@localhost:9003/reject',
token: server.accessToken,
statusCodeExpected: 404
})
})
})
describe('When removing following', function () {
const path = '/api/v1/server/following'