Ejemplo n.º 1
0
    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)
Ejemplo n.º 2
0
    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)
Ejemplo n.º 3
0
 def setUp(self):
     self.routes = grow_routes.Routes()
Ejemplo n.º 4
0
Archivo: router.py Proyecto: uxder/grow
 def __init__(self, pod, routes=None):
     self.pod = pod
     self._routes = routes or grow_routes.Routes()
Ejemplo n.º 5
0
 def __init__(self, pod):
     self.pod = pod
     self._routes = grow_routes.Routes()