def test_converter_specified_by_path(self): path = '/<(tangled.util:load_object)obj>' mr = MountedResource('test', None, path) info = mr.urlvars_info self.assertIs(info['obj']['converter'], load_object) self.assertEqual( mr.format_path(obj='collections:OrderedDict'), '/collections:OrderedDict')
def test_add_slash(self): path = '/some/dir/' mr = MountedResource('test', None, path) self.assertTrue(mr.add_slash) self.assertEqual(mr.format_path(), '/some/dir/') tree = MountedResourceTree() tree.add(mr) tree.find('GET', '/some/dir/') match = tree.find('GET', '/some/dir/') self.assertIsNotNone(match) self.assertIs(match.mounted_resource, mr) match = tree.find('GET', '/some/dir') self.assertIsNotNone(match) self.assertIs(match.mounted_resource, mr)
def test_add_slash(self): app = self.app path = '/some/dir/' mr = MountedResource(app, 'test', TestResource, path) self.assertTrue(mr.add_slash) self.assertEqual(mr.format_path(), '/some/dir/')
def test_format_path_bad_value(self): path = '/<path><name>/<id:int>.<format>;extra' mr = MountedResource(self.app, 'test', TestResource, path) with self.assertRaises(ValueError): mr.format_path(path='somewhere', name='bob', id='x', format='json')
def test_format_path(self): path = '/<path><name>/<id>.<format>;extra' mr = MountedResource(self.app, 'test', TestResource, path) self.assertEqual( mr.format_path(path='somewhere', name='bob', id=13, format='json'), '/somewherebob/13.json;extra')
def test_format_path_bad_value(self): path = '/<path><name:[a-z]{3}>/<(int)id:\d+>.<format:[a-z]+>;extra' mr = MountedResource('test', None, path) with self.assertRaises(ValueError): mr.format_path(path='somewhere', name='bob', id='x', format='json')
def test_format_path(self): path = '/<path><name:[a-z]{3}>/<(int)id:\d+>.<format:[a-z]+>;extra' mr = MountedResource('test', None, path) self.assertEqual( mr.format_path(path='somewhere', name='bob', id=13, format='json'), '/somewherebob/13.json;extra')