diff --git a/core/url_registry/tests.py b/core/url_registry/tests.py index ff01b6bde..177d842e4 100644 --- a/core/url_registry/tests.py +++ b/core/url_registry/tests.py @@ -122,3 +122,11 @@ def test_post(self, lookup_mock): self.assertEqual(response.status_code, 200) self.assertEqual(response.data, RepoListSerializer(source).data) lookup_mock.assert_called_with('https://foo.com', source.organization) + + response = self.client.post( + '/orgs/Foo/url-registry/$lookup/', + {'url': 'https://foo.com'}, + HTTP_AUTHORIZATION=f'Token {token}' + ) + + self.assertEqual(response.status_code, 404) diff --git a/core/url_registry/views.py b/core/url_registry/views.py index 61aed8df0..3f5879e03 100644 --- a/core/url_registry/views.py +++ b/core/url_registry/views.py @@ -37,6 +37,9 @@ def set_parent_resource(self): self.parent_resource = UserProfile.objects.filter(username=user).first() self.parent_resource_type = 'user' + if (org or user) and not self.parent_resource: + raise Http404() + self.kwargs['parent_resource'] = self.parent_resource self.kwargs['parent_resource_type'] = self.parent_resource_type