def test_routes_update_operation(self): """Tests that routes can be updated.""" doc = self._add('/', '/content/pages/home') result = self.routes.match('/') self.assertEqual(doc['value'], result.value) doc_foo_bar = self._add('/foo/bar', '/content/pages/foo/bar') result = self.routes.match('/foo/bar') self.assertEqual(doc_foo_bar['value'], result.value) new_routes = grow_routes.Routes() doc_bar = self._add('/bar', '/content/pages/bar', custom_routes=new_routes) result = new_routes.match('/bar') self.assertEqual(doc_bar['value'], result.value) self.routes.update(new_routes) # Verify that the original routes has both the route paths. result = self.routes.match('/') self.assertEqual(doc['value'], result.value) result = self.routes.match('/foo/bar') self.assertEqual(doc_foo_bar['value'], result.value) result = self.routes.match('/bar') self.assertEqual(doc_bar['value'], result.value) # Verify that the new routes were not changed. result = self.routes.match('/foo/bar') self.assertEqual(doc_foo_bar['value'], result.value) result = new_routes.match('/bar') self.assertEqual(doc_bar['value'], result.value) result = new_routes.match('/foo/bar') self.assertEqual(None, result)
def test_routes_add_operation(self): """Tests that routes can be added together.""" doc = self._add('/', '/content/pages/home') result = self.routes.match('/') self.assertEquals(doc['value'], result.value) doc_foo_bar = self._add('/foo/bar', '/content/pages/foo') result = self.routes.match('/foo/bar') self.assertEquals(doc_foo_bar['value'], result.value) new_routes = grow_routes.Routes() doc_bar = self._add('/bar', '/content/pages/bar', custom_routes=new_routes) result = new_routes.match('/bar') self.assertEquals(doc_bar['value'], result.value) added_routes = self.routes + new_routes # Verify that the new routes has both the other route paths. result = added_routes.match('/') self.assertEquals(doc['value'], result.value) result = added_routes.match('/foo/bar') self.assertEquals(doc_foo_bar['value'], result.value) result = added_routes.match('/bar') self.assertEquals(doc_bar['value'], result.value) # Verify that the originals were not changed. result = self.routes.match('/') self.assertEquals(doc['value'], result.value) result = self.routes.match('/bar') self.assertEquals(None, result) result = self.routes.match('/foo/bar') self.assertEquals(doc_foo_bar['value'], result.value) result = new_routes.match('/bar') self.assertEquals(doc_bar['value'], result.value) result = new_routes.match('/foo/bar') self.assertEquals(None, result)
def setUp(self): self.routes = grow_routes.Routes()
def __init__(self, pod, routes=None): self.pod = pod self._routes = routes or grow_routes.Routes()
def __init__(self, pod): self.pod = pod self._routes = grow_routes.Routes()