| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- import { expect } from 'chai'
- import sinon from 'sinon'
- import { buildUrlWithDetachRole } from '../../../../frontend/js/shared/utils/url-helper'
- describe('url-helper', function () {
- let locationStub
- describe('buildUrlWithDetachRole', function () {
- beforeEach(function () {
- locationStub = sinon.stub(window, 'location')
- })
- afterEach(function () {
- locationStub.restore()
- })
- describe('without mode', function () {
- it('removes trailing slash', function () {
- locationStub.value('https://www.ovelreaf.com/project/1abc/')
- expect(buildUrlWithDetachRole().href).to.equal(
- 'https://www.ovelreaf.com/project/1abc'
- )
- })
- it('clears the mode from the current URL', function () {
- locationStub.value('https://www.ovelreaf.com/project/2abc/detached')
- expect(buildUrlWithDetachRole().href).to.equal(
- 'https://www.ovelreaf.com/project/2abc'
- )
- locationStub.value('https://www.ovelreaf.com/project/2abc/detacher/')
- expect(buildUrlWithDetachRole().href).to.equal(
- 'https://www.ovelreaf.com/project/2abc'
- )
- })
- })
- describe('with mode', function () {
- it('handles with trailing slash', function () {
- locationStub.value('https://www.ovelreaf.com/project/3abc/')
- expect(buildUrlWithDetachRole('detacher').href).to.equal(
- 'https://www.ovelreaf.com/project/3abc/detacher'
- )
- })
- it('handles without trailing slash', function () {
- locationStub.value('https://www.ovelreaf.com/project/4abc')
- expect(buildUrlWithDetachRole('detached').href).to.equal(
- 'https://www.ovelreaf.com/project/4abc/detached'
- )
- })
- })
- })
- })
|