1--TEST--
2Check for Yaf_Route_Map with arbitrary urls
3--SKIPIF--
4<?php if (!extension_loaded("yaf")) print "skip"; ?>
5--INI--
6yaf.use_namespace=0
7--FILE--
8<?php
9$url = array(
10  "/", "/foo", "/foo/", "/foo///bar", "//foo//bar", "/foo/bar///",
11  "/foo/bar/:", "/foo/bar/:/", "/foo///bar/:/name/laruence/age/32",
12  "foo/bar/:dummy/value:/age/37",
13);
14
15$route = new Yaf_Route_Map(true);
16
17foreach ($url as $u) {
18   $req = new Yaf_Request_Http($u);
19   $route->route($req);
20   echo $u, " : ",  "m=>", $req->getModuleName(), " c=>", $req->getControllerName(), " a=>",  $req->getActionName();
21   if (($args = $req->getParams())) {
22       echo " args=>";
23       foreach ($args as $k => $v) {
24          echo $k , "->", $v , ",";
25       }
26   }
27   echo "\n";
28}
29
30$route = new Yaf_Route_Map(false, ":");
31
32foreach ($url as $u) {
33   $req = new Yaf_Request_Http($u);
34   $route->route($req);
35   echo $u, " : ",  "m=>", $req->getModuleName(), " c=>", $req->getControllerName(), " a=>",  $req->getActionName();
36   if (($args = $req->getParams())) {
37       echo " args=>";
38       foreach ($args as $k => $v) {
39          echo $k , "->", $v , ",";
40       }
41   }
42   echo "\n";
43}
44--EXPECT--
45/ : m=> c=> a=>
46/foo : m=> c=>Foo a=>
47/foo/ : m=> c=>Foo a=>
48/foo///bar : m=> c=>Foo_Bar a=>
49//foo//bar : m=> c=>Foo_Bar a=>
50/foo/bar/// : m=> c=>Foo_Bar a=>
51/foo/bar/: : m=> c=>Foo_Bar_: a=>
52/foo/bar/:/ : m=> c=>Foo_Bar_: a=>
53/foo///bar/:/name/laruence/age/32 : m=> c=>Foo_Bar_:_Name_Laruence_Age_32 a=>
54foo/bar/:dummy/value:/age/37 : m=> c=>Foo_Bar_:dummy_Value:_Age_37 a=>
55/ : m=> c=> a=>
56/foo : m=> c=> a=>foo
57/foo/ : m=> c=> a=>foo
58/foo///bar : m=> c=> a=>foo_bar
59//foo//bar : m=> c=> a=>foo_bar
60/foo/bar/// : m=> c=> a=>foo_bar
61/foo/bar/: : m=> c=> a=>foo_bar
62/foo/bar/:/ : m=> c=> a=>foo_bar
63/foo///bar/:/name/laruence/age/32 : m=> c=> a=>foo_bar args=>name->laruence,age->32,
64foo/bar/:dummy/value:/age/37 : m=> c=> a=>foo_bar args=>dummy->value:,age->37,
65