def testPathMapperCallsFunctionWithKWArgs(self): self.kwargs = {} def f(*args, **kwargs): self.kwargs = kwargs p = PathMapper([(r"^/a/(?P<key>\w)$", f)]) p.resolve("/a/b") self.assertEquals("b", self.kwargs["key"])
def testPathMapperCallsFunctionWithArgs(self): self.args = () def f(*args): self.args = args p = PathMapper([(r"^/a/(\w)$", f)]) p.resolve("/a/b") self.assertEquals(("b",), self.args)
def testPathMapperCallsFunction(self): self.called = False def f(): self.called = True p = PathMapper([(r"^/abc$", f)]) p.resolve("/abc") self.assertEquals(True, self.called)
def testPathMapperHandlesBothCountAndKeywords(self): self.flag = False def f(count, key=None): if count == "1" and key == "test": self.flag = True else: print "'%d' '%d'" % (count, key) p = PathMapper([(r"^/a/(\d+)/(?P<key>\w+)$", f)]) p.resolve("/a/1/test") self.assertEquals(True, self.flag)
def testPathMapperReturnsNoneOnMissedPath(self): p = PathMapper([(r"^/a/(?P<key>\w)$", None)]) self.assertEquals(None, p.resolve("/b/asc")) self.assertEquals(None, p.resolve("/a/bc")) self.assertEquals(None, p.resolve("/"))
def testPathMapperReturnsFunctionResult(self): def f(*args, **kwargs): return True p = PathMapper([(r"^/a/(?P<key>\w)$", f)]) self.assertEquals(True, p.resolve("/a/b"))