40 lines
976 B
JavaScript
40 lines
976 B
JavaScript
const AuthAPI = require('../AuthAPI')
|
|
|
|
describe('Auth API', () => {
|
|
beforeEach(done => {
|
|
AuthAPI.removeAllRevokedTokens().then(() => done(), done)
|
|
})
|
|
|
|
it('creates tokens with the right scopes', done => {
|
|
const scopes = {
|
|
blacklist: {
|
|
add: true,
|
|
remove: true
|
|
}
|
|
}
|
|
|
|
AuthAPI.createToken(scopes).then(token => {
|
|
AuthAPI.verifyToken(token).then(payload => {
|
|
expect(payload.jti).toEqual(expect.any(String))
|
|
expect(payload.iss).toEqual(expect.any(String))
|
|
expect(payload.iat).toEqual(expect.any(Number))
|
|
expect(payload.scopes).toMatchObject(scopes)
|
|
done()
|
|
})
|
|
})
|
|
})
|
|
|
|
it('refuses to verify revoked tokens', done => {
|
|
const scopes = {}
|
|
|
|
AuthAPI.createToken(scopes).then(token => {
|
|
AuthAPI.revokeToken(token).then(() => {
|
|
AuthAPI.verifyToken(token).then(payload => {
|
|
expect(payload).toBe(null)
|
|
done()
|
|
})
|
|
})
|
|
})
|
|
})
|
|
})
|