@@ -18,7 +18,7 @@ def test_empty_by_default(self):
1818 def test_use_default_handler_when_set_and_no_match (self ):
1919 handler = object ()
2020 self .dispatcher .set_default_handler (handler )
21- self .assertEqual ([(handler , [])], self .dispatcher .handlers_for_address ('/test' ))
21+ self .assertEqual ([dispatcher . Handler (handler , [])], self .dispatcher .handlers_for_address ('/test' ))
2222
2323 def test_simple_map_and_match (self ):
2424 handler = object ()
@@ -27,7 +27,7 @@ def test_simple_map_and_match(self):
2727 self .assertEqual (
2828 [(handler , [1 , 2 , 3 ])], self .dispatcher .handlers_for_address ('/test' ))
2929 self .assertEqual (
30- [(handler , [])], self .dispatcher .handlers_for_address ('/test2' ))
30+ [dispatcher . Handler (handler , [])], self .dispatcher .handlers_for_address ('/test2' ))
3131
3232 def test_example_from_spec (self ):
3333 addresses = [
@@ -89,5 +89,22 @@ def test_call_correct_dispatcher_on_star(self):
8989 self .sortAndAssertSequenceEqual (
9090 [(1 , [])], self .dispatcher .handlers_for_address ('/a+b' ))
9191
92+ def test_map_star (self ):
93+ self .dispatcher .map ('/starbase/*' , 1 )
94+ self .sortAndAssertSequenceEqual (
95+ [(1 , [])], self .dispatcher .handlers_for_address ("/starbase/bar" ))
96+
97+ def test_map_root_star (self ):
98+ self .dispatcher .map ('/*' , 1 )
99+ self .sortAndAssertSequenceEqual (
100+ [(1 , [])], self .dispatcher .handlers_for_address ("/anything/matches" ))
101+
102+ def test_map_double_stars (self ):
103+ self .dispatcher .map ('/foo/*/bar/*' , 1 )
104+ self .sortAndAssertSequenceEqual (
105+ [(1 , [])], self .dispatcher .handlers_for_address ("/foo/wild/bar/wild" ))
106+ self .sortAndAssertSequenceEqual (
107+ [], self .dispatcher .handlers_for_address ("/foo/wild/nomatch/wild" ))
108+
92109if __name__ == "__main__" :
93110 unittest .main ()
0 commit comments