@@ -10,7 +10,7 @@ const expect = chai.expect
1010
1111type Test = [
1212 pathToRegexp . Path ,
13- pathToRegexp . Options ,
13+ pathToRegexp . RegExpOptions & pathToRegexp . ParseOptions ,
1414 pathToRegexp . Token [ ] ,
1515 Array < [ string , string [ ] ] > ,
1616 Array < [ any , string ] >
@@ -1122,7 +1122,7 @@ var TESTS: Test[] = [
11221122 repeat : false ,
11231123 partial : false ,
11241124 asterisk : false ,
1125- pattern : '[^.]+?'
1125+ pattern : '[^\\ .]+?'
11261126 }
11271127 ] ,
11281128 [
@@ -1148,7 +1148,7 @@ var TESTS: Test[] = [
11481148 repeat : false ,
11491149 partial : false ,
11501150 asterisk : false ,
1151- pattern : '[^.]+?'
1151+ pattern : '[^\\ .]+?'
11521152 } ,
11531153 {
11541154 name : 'format' ,
@@ -1158,7 +1158,7 @@ var TESTS: Test[] = [
11581158 repeat : false ,
11591159 partial : false ,
11601160 asterisk : false ,
1161- pattern : '[^.]+?'
1161+ pattern : '[^\\ .]+?'
11621162 }
11631163 ] ,
11641164 [
@@ -1183,7 +1183,7 @@ var TESTS: Test[] = [
11831183 repeat : true ,
11841184 partial : false ,
11851185 asterisk : false ,
1186- pattern : '[^.]+?'
1186+ pattern : '[^\\ .]+?'
11871187 }
11881188 ] ,
11891189 [
@@ -1211,7 +1211,7 @@ var TESTS: Test[] = [
12111211 repeat : false ,
12121212 partial : false ,
12131213 asterisk : false ,
1214- pattern : '[^.]+?'
1214+ pattern : '[^\\ .]+?'
12151215 }
12161216 ] ,
12171217 [
@@ -1235,7 +1235,7 @@ var TESTS: Test[] = [
12351235 repeat : false ,
12361236 partial : false ,
12371237 asterisk : false ,
1238- pattern : '[^.]+?'
1238+ pattern : '[^\\ .]+?'
12391239 } ,
12401240 '.'
12411241 ] ,
@@ -1274,7 +1274,7 @@ var TESTS: Test[] = [
12741274 repeat : false ,
12751275 partial : false ,
12761276 asterisk : false ,
1277- pattern : '[^.]+?'
1277+ pattern : '[^\\ .]+?'
12781278 }
12791279 ] ,
12801280 [
@@ -1309,7 +1309,7 @@ var TESTS: Test[] = [
13091309 repeat : false ,
13101310 partial : false ,
13111311 asterisk : false ,
1312- pattern : '[^.]+?'
1312+ pattern : '[^\\ .]+?'
13131313 }
13141314 ] ,
13151315 [
@@ -1347,7 +1347,7 @@ var TESTS: Test[] = [
13471347 repeat : false ,
13481348 partial : false ,
13491349 asterisk : false ,
1350- pattern : '[^.]+?'
1350+ pattern : '[^\\ .]+?'
13511351 }
13521352 ] ,
13531353 [
@@ -2135,6 +2135,92 @@ var TESTS: Test[] = [
21352135 [
21362136 [ { foo : 'café' } , '/caf%C3%A9' ]
21372137 ]
2138+ ] ,
2139+
2140+ /**
2141+ * Hostnames.
2142+ */
2143+ [
2144+ ':domain.com' ,
2145+ {
2146+ delimiter : '.'
2147+ } ,
2148+ [
2149+ {
2150+ name : 'domain' ,
2151+ prefix : '' ,
2152+ delimiter : '.' ,
2153+ optional : false ,
2154+ repeat : false ,
2155+ partial : false ,
2156+ asterisk : false ,
2157+ pattern : '[^\\.]+?'
2158+ } ,
2159+ '.com'
2160+ ] ,
2161+ [
2162+ [ 'example.com' , [ 'example.com' , 'example' ] ] ,
2163+ [ 'github.com' , [ 'github.com' , 'github' ] ] ,
2164+ ] ,
2165+ [
2166+ [ { domain : 'example' } , 'example.com' ] ,
2167+ [ { domain : 'github' } , 'github.com' ]
2168+ ]
2169+ ] ,
2170+ [
2171+ 'mail.:domain.com' ,
2172+ {
2173+ delimiter : '.'
2174+ } ,
2175+ [
2176+ 'mail' ,
2177+ {
2178+ name : 'domain' ,
2179+ prefix : '.' ,
2180+ delimiter : '.' ,
2181+ optional : false ,
2182+ repeat : false ,
2183+ partial : false ,
2184+ asterisk : false ,
2185+ pattern : '[^\\.]+?'
2186+ } ,
2187+ '.com'
2188+ ] ,
2189+ [
2190+ [ 'mail.example.com' , [ 'mail.example.com' , 'example' ] ] ,
2191+ [ 'mail.github.com' , [ 'mail.github.com' , 'github' ] ]
2192+ ] ,
2193+ [
2194+ [ { domain : 'example' } , 'mail.example.com' ] ,
2195+ [ { domain : 'github' } , 'mail.github.com' ]
2196+ ]
2197+ ] ,
2198+ [
2199+ 'example.:ext' ,
2200+ {
2201+ delimiter : '.'
2202+ } ,
2203+ [
2204+ 'example' ,
2205+ {
2206+ name : 'ext' ,
2207+ prefix : '.' ,
2208+ delimiter : '.' ,
2209+ optional : false ,
2210+ repeat : false ,
2211+ partial : false ,
2212+ asterisk : false ,
2213+ pattern : '[^\\.]+?'
2214+ }
2215+ ] ,
2216+ [
2217+ [ 'example.com' , [ 'example.com' , 'com' ] ] ,
2218+ [ 'example.org' , [ 'example.org' , 'org' ] ] ,
2219+ ] ,
2220+ [
2221+ [ { ext : 'com' } , 'example.com' ] ,
2222+ [ { ext : 'org' } , 'example.org' ]
2223+ ]
21382224 ]
21392225]
21402226
@@ -2224,7 +2310,7 @@ describe('path-to-regexp', function () {
22242310 // Parsing and compiling is only supported with string input.
22252311 if ( typeof path === 'string' ) {
22262312 it ( 'should parse' , function ( ) {
2227- expect ( pathToRegexp . parse ( path ) ) . to . deep . equal ( tokens )
2313+ expect ( pathToRegexp . parse ( path , opts ) ) . to . deep . equal ( tokens )
22282314 } )
22292315
22302316 describe ( 'compile' , function ( ) {
0 commit comments