/
generateHapiPath.test.js
45 lines (39 loc) · 1.34 KB
/
generateHapiPath.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import generateHapiPath from '../generateHapiPath.js'
const serverless = {
service: {
provider: {
stage: 'dev',
},
},
}
describe('generateHapiPath', () => {
test('should generate url starting with a slash', () => {
const options = {}
const result = generateHapiPath('users', options, serverless)
expect(result[0]).toEqual('/')
})
test('should generate url with the stage prepended', () => {
const options = {}
const result = generateHapiPath('users', options, serverless)
expect(result).toEqual('/dev/users')
})
describe('when a prefix option is set', () => {
test('the url should add the prefix', () => {
const options = { prefix: 'some-prefix' }
const result = generateHapiPath('users', options, serverless)
expect(result).toEqual('/some-prefix/dev/users')
})
})
describe('when the noPrependStageInUrl option is set', () => {
test('the url should omit the stage', () => {
const options = { noPrependStageInUrl: true }
const result = generateHapiPath('users', options, serverless)
expect(result).toEqual('/users')
})
})
test('the stage from options should override stage from serverless config', () => {
const options = { stage: 'prod' }
const result = generateHapiPath('users', options, serverless)
expect(result).toEqual('/prod/users')
})
})