def test_resolve_with_static_path_and_specified_name(self): view_name = 'user-list' match = resolve('/user/list/', self.data) self.assertIsInstance(match, RouteMatch) self.assertEqual(match.view_name, view_name) self.assertEqual(match.args, ()) self.assertEqual(match.kwargs, {})
def to_internal_value(self, data): url_field_name = settings.REST_CONFIG['URL_FIELD_NAME'] try: url = urlparse(data[url_field_name]).path except KeyError: self.raise_error('no_primary_key', url_field=url_field_name) except (AttributeError, TypeError): self.raise_error('incorrect_type', data_type=type(data).__name__) if not url.startswith('/'): url = '/' + url if not url.endswith('/'): url += '/' try: match = resolve(url) except NoMatch: self.raise_error('no_match') return self.get_object(match.view_name, match.args, match.kwargs)
def test_resolve_absolute_path(self): match = resolve('wss://127.0.0.1:8000/user/1/', self.data) self.assertIsInstance(match, RouteMatch) self.assertIsNone(match.view_name) self.assertEqual(match.args, ('1', )) self.assertEqual(match.kwargs, {'pk': '1'})
def test_resolve_raises_no_match_exception_for_empty_list(self): with self.assertRaises(NoMatch): empty_urlconf = {'path': 'wss://127.0.0.1:8000/', 'urls': []} resolve('/user/1/', empty_urlconf)
def test_resolve_raises_no_match_exception(self): with self.assertRaises(NoMatch): resolve('/user-list/', self.data)
def test_resolve_with_dynamic_path(self): match = resolve('/user/1/', self.data) self.assertIsInstance(match, RouteMatch) self.assertIsNone(match.view_name) self.assertEqual(match.args, ('1', )) self.assertEqual(match.kwargs, {'pk': '1'})
def test_resolve_with_static_path(self): match = resolve('/user/', self.data) self.assertIsInstance(match, RouteMatch) self.assertIsNone(match.view_name) self.assertEqual(match.args, ()) self.assertEqual(match.kwargs, {})
def test_resolve_absolute_path(self): match = resolve('wss://127.0.0.1:8000/user/1/', self.data) self.assertIsInstance(match, RouteMatch) self.assertIsNone(match.view_name) self.assertEqual(match.args, ('1',)) self.assertEqual(match.kwargs, {'pk': '1'})
def test_resolve_with_dynamic_path(self): match = resolve('/user/1/', self.data) self.assertIsInstance(match, RouteMatch) self.assertIsNone(match.view_name) self.assertEqual(match.args, ('1',)) self.assertEqual(match.kwargs, {'pk': '1'})