Skip to content

Commit aee4c44

Browse files
committed
exclude hidden repos
1 parent ee8ef70 commit aee4c44

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

src/sentry/api/endpoints/organization_repositories.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ def get(self, request: Request, organization) -> Response:
8181

8282
elif status:
8383
queryset = queryset.none()
84+
elif status is None:
85+
queryset = queryset.exclude(status=ObjectStatus.HIDDEN)
8486

8587
return self.paginate(
8688
request=request,

tests/sentry/api/endpoints/test_organization_repositories.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,32 @@ def test_get_integration_repository(self):
4848
assert first_row["provider"] == {"id": "dummy", "name": "Example"}
4949
assert first_row["externalSlug"] == str(repo.external_id)
5050

51+
def test_get_active_repos(self):
52+
repo = Repository.objects.create(
53+
name="getsentry/example",
54+
organization_id=self.org.id,
55+
external_id=12345,
56+
provider="dummy",
57+
config={"name": "getsentry/example"},
58+
)
59+
Repository.objects.create(
60+
name="getsentry/sentry",
61+
organization_id=self.org.id,
62+
external_id=54321,
63+
provider="dummy",
64+
config={"name": "getsentry/sentry"},
65+
status=ObjectStatus.HIDDEN,
66+
)
67+
68+
response = self.client.get(self.url, format="json")
69+
70+
assert response.status_code == 200, response.content
71+
assert len(response.data) == 1
72+
first_row = response.data[0]
73+
assert first_row["id"] == str(repo.id)
74+
assert first_row["provider"] == {"id": "dummy", "name": "Example"}
75+
assert first_row["externalSlug"] == str(repo.external_id)
76+
5177
def test_status_unmigratable(self):
5278
self.url = self.url + "?status=unmigratable"
5379

0 commit comments

Comments
 (0)