1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 | "use strict"
|
10 |
|
11 | expect = require 'expect.js'
|
12 |
|
13 | PathToRegExp = require '../lib/path-to-regexp'
|
14 |
|
15 | describe 'path to regext', ->
|
16 |
|
17 | it 'pattern /, request /', ( done ) ->
|
18 | re = PathToRegExp '/'
|
19 | [ _ ] = re.exec '/'
|
20 | expect( _ ).to.be '/'
|
21 | done()
|
22 |
|
23 | it 'pattern /, request /test', ( done ) ->
|
24 | re = PathToRegExp '/'
|
25 | [ _ ] = re.exec '/test'
|
26 | expect( _ ).to.be '/test'
|
27 | done()
|
28 |
|
29 | it 'pattern /test, request /test', ( done ) ->
|
30 | re = PathToRegExp '/test'
|
31 | [ _ ] = re.exec '/test'
|
32 | expect( _ ).to.be '/test'
|
33 | done()
|
34 |
|
35 | it 'pattern /test, request /test/test1', ( done ) ->
|
36 | re = PathToRegExp '/test'
|
37 | [ _ ] = re.exec '/test/test1'
|
38 | expect( _ ).to.be '/test/test1'
|
39 | done()
|
40 |
|
41 | it 'pattern /test/:test1, request /test/test1', ( done ) ->
|
42 | re = PathToRegExp '/test/:test1'
|
43 | [ _, test1 ] = re.exec '/test/test1'
|
44 | expect( _ ).to.be '/test/test1'
|
45 | expect( test1 ).to.be 'test1'
|
46 | done()
|
47 |
|
48 | it 'pattern /:test/test1/:test2, request /test/test1/test2', ( done ) ->
|
49 | re = PathToRegExp '/:test/test1/:test2'
|
50 | [ _, test, test2 ] = re.exec '/test/test1/test2'
|
51 | expect( _ ).to.be '/test/test1/test2'
|
52 | expect( test ).to.be 'test'
|
53 | expect( test2 ).to.be 'test2'
|
54 | done()
|
55 |
|
56 | it 'pattern /^\/test\/.*$/, request /test/test1', ( done ) ->
|
57 | re = PathToRegExp /^\/test\/.*$/
|
58 | [ _ ] = re.exec '/test/test1'
|
59 | expect( _ ).to.be '/test/test1'
|
60 | done()
|
61 |
|
62 | it 'pattern /test/:test1, request /test1/test1', ( done ) ->
|
63 | re = PathToRegExp '/test/:test1'
|
64 | res = re.exec '/test1/test1'
|
65 | expect( res ).to.be null
|
66 | done()
|
67 |
|
68 | it 'pattern /test, request /test1', ( done ) ->
|
69 | re = PathToRegExp '/test'
|
70 | expect( re.exec '/test1' ).to.be null
|
71 | done()
|