You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
815 B
25 lines
815 B
4 years ago
|
'use strict'
|
||
|
|
||
|
const t = require('tap')
|
||
|
const FindMyWay = require('../')
|
||
|
|
||
|
t.test('issue-145', (t) => {
|
||
|
t.plan(8)
|
||
|
|
||
|
const findMyWay = FindMyWay({ ignoreTrailingSlash: true })
|
||
|
|
||
|
const fixedPath = function staticPath () {}
|
||
|
const varPath = function parameterPath () {}
|
||
|
findMyWay.on('GET', '/a/b', fixedPath)
|
||
|
findMyWay.on('GET', '/a/:pam/c', varPath)
|
||
|
|
||
|
t.equals(findMyWay.find('GET', '/a/b').handler, fixedPath)
|
||
|
t.equals(findMyWay.find('GET', '/a/b/').handler, fixedPath)
|
||
|
t.equals(findMyWay.find('GET', '/a/b/c').handler, varPath)
|
||
|
t.equals(findMyWay.find('GET', '/a/b/c/').handler, varPath)
|
||
|
t.equals(findMyWay.find('GET', '/a/foo/c').handler, varPath)
|
||
|
t.equals(findMyWay.find('GET', '/a/foo/c/').handler, varPath)
|
||
|
t.notOk(findMyWay.find('GET', '/a/c'))
|
||
|
t.notOk(findMyWay.find('GET', '/a/c/'))
|
||
|
})
|