connect-vtexid
Version:
VTEX ID Authentication middleware for Connect
52 lines (36 loc) • 1.63 kB
text/coffeescript
Module dependencies.
getRedirectSettings = require '../libs/return-url'
describe 'Lib', ->
describe '#getRedirectSettings()', ->
it 'should exist as a public function', (done) ->
getRedirectSettings.bind(null).should.be.a.Function
done()
it 'should throw an error if options was not passed as parameter', (done) ->
getRedirectSettings.bind(null).should.throw '"options" parameter is required'
done()
it 'should replace returnUrl with previousUrl if req.url is /admin/logout', (done) ->
returnUrl = '/admin/logout?previousUrl=/admin/checkout'
options =
useReturnUrl: true
redirectUrl: '/admin/login?ReturnUrl='
logoutUrl: '/admin/logout'
expectedReturnUrl = '/admin/checkout'
expectedRedirectUrl = '/admin/login?ReturnUrl=/admin/checkout'
redirectSettings = getRedirectSettings options, returnUrl
redirectSettings.returnUrl.should.be.equal expectedReturnUrl
redirectSettings.redirectUrl.should.be.equal expectedRedirectUrl
done()
it 'should return an object containing return url and redirect url', (done) ->
returnUrl = '/admin/checkout'
options =
useReturnUrl: true
redirectUrl: '/admin/login?ReturnUrl='
logoutUrl: '/admin/logout'
expectedReturnUrl = '/admin/checkout'
expectedRedirectUrl = '/admin/login?ReturnUrl=/admin/checkout'
redirectSettings = getRedirectSettings options, returnUrl
redirectSettings.returnUrl.should.be.equal expectedReturnUrl
redirectSettings.redirectUrl.should.be.equal expectedRedirectUrl
done()