Check correctly activitypub headers
This commit is contained in:
parent
25ed141c7c
commit
6cbdbdef17
2 changed files with 43 additions and 1 deletions
|
@ -37,7 +37,7 @@ async function checkSignature (req: Request, res: Response, next: NextFunction)
|
||||||
|
|
||||||
function executeIfActivityPub (fun: RequestHandler | RequestHandler[]) {
|
function executeIfActivityPub (fun: RequestHandler | RequestHandler[]) {
|
||||||
return (req: Request, res: Response, next: NextFunction) => {
|
return (req: Request, res: Response, next: NextFunction) => {
|
||||||
if (ACTIVITY_PUB.ACCEPT_HEADERS.indexOf(req.header('Accept')) === -1) {
|
if (req.accepts(ACTIVITY_PUB.POTENTIAL_ACCEPT_HEADERS) === false) {
|
||||||
return next()
|
return next()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
42
server/tests/activitypub.ts
Normal file
42
server/tests/activitypub.ts
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
/* tslint:disable:no-unused-expression */
|
||||||
|
|
||||||
|
import * as chai from 'chai'
|
||||||
|
import 'mocha'
|
||||||
|
import { flushTests, killallServers, ServerInfo, setAccessTokensToServers } from './utils'
|
||||||
|
import { runServer } from './utils/servers'
|
||||||
|
import { makeActivityPubGetRequest } from './utils/activitypub'
|
||||||
|
|
||||||
|
const expect = chai.expect
|
||||||
|
|
||||||
|
describe('Test activitypub', function () {
|
||||||
|
let server: ServerInfo = null
|
||||||
|
|
||||||
|
before(async function () {
|
||||||
|
this.timeout(10000)
|
||||||
|
|
||||||
|
await flushTests()
|
||||||
|
|
||||||
|
server = await runServer(1)
|
||||||
|
|
||||||
|
await setAccessTokensToServers([ server ])
|
||||||
|
})
|
||||||
|
|
||||||
|
it('Should return the account object', async function () {
|
||||||
|
const res = await makeActivityPubGetRequest(server.url, '/account/root')
|
||||||
|
const object = res.body
|
||||||
|
|
||||||
|
expect(object.type).to.equal('Person')
|
||||||
|
expect(object.id).to.equal('http://localhost:9001/account/root')
|
||||||
|
expect(object.name).to.equal('root')
|
||||||
|
expect(object.preferredUsername).to.equal('root')
|
||||||
|
})
|
||||||
|
|
||||||
|
after(async function () {
|
||||||
|
killallServers([ server ])
|
||||||
|
|
||||||
|
// Keep the logs if the test failed
|
||||||
|
if (this['ok']) {
|
||||||
|
await flushTests()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
Loading…
Reference in a new issue