Skip to content

Commit e192014

Browse files
committed
Simplify tests
1 parent 1df104b commit e192014

File tree

1 file changed

+29
-60
lines changed

1 file changed

+29
-60
lines changed

tests/sentry/tasks/test_commits.py

Lines changed: 29 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,29 @@ def _github_compare_commits_result(self, repo_name: str, end_sha: str) -> list[d
3434
{"id": end_sha, "repository": repo_name},
3535
]
3636

37+
def _setup_github_compare_commits_cache_context(self):
38+
org = self.create_organization(owner=self.user, name="baz")
39+
repo = Repository.objects.create(
40+
name="example",
41+
provider="integrations:github",
42+
organization_id=org.id,
43+
)
44+
previous_release = Release.objects.create(organization_id=org.id, version="old-release")
45+
previous_commit = Commit.objects.create(
46+
organization_id=org.id, repository_id=repo.id, key="a" * 40
47+
)
48+
ReleaseHeadCommit.objects.create(
49+
organization_id=org.id,
50+
repository_id=repo.id,
51+
release=previous_release,
52+
commit=previous_commit,
53+
)
54+
55+
refs = [{"repository": repo.name, "commit": "b" * 40}]
56+
first_release = Release.objects.create(organization_id=org.id, version="new-release-1")
57+
second_release = Release.objects.create(organization_id=org.id, version="new-release-2")
58+
return org, repo, previous_release, first_release, second_release, refs
59+
3760
def test_github_compare_commits_cache_key_avoids_ambiguous_id_collisions(
3861
self, mock_record: MagicMock
3962
) -> None:
@@ -113,29 +136,11 @@ def test_github_compare_commits_cache_flag_disabled(
113136
self.login_as(user=self.user)
114137
cache.clear()
115138

116-
org = self.create_organization(owner=self.user, name="baz")
117-
repo = Repository.objects.create(
118-
name="example",
119-
provider="integrations:github",
120-
organization_id=org.id,
121-
)
122-
previous_release = Release.objects.create(organization_id=org.id, version="old-release")
123-
previous_commit = Commit.objects.create(
124-
organization_id=org.id, repository_id=repo.id, key="a" * 40
139+
_, repo, previous_release, first_release, second_release, refs = (
140+
self._setup_github_compare_commits_cache_context()
125141
)
126-
ReleaseHeadCommit.objects.create(
127-
organization_id=org.id,
128-
repository_id=repo.id,
129-
release=previous_release,
130-
commit=previous_commit,
131-
)
132-
133-
refs = [{"repository": repo.name, "commit": "b" * 40}]
134142
mock_compare_commits.return_value = self._github_compare_commits_result(repo.name, "b" * 40)
135143

136-
first_release = Release.objects.create(organization_id=org.id, version="new-release-1")
137-
second_release = Release.objects.create(organization_id=org.id, version="new-release-2")
138-
139144
with self.tasks():
140145
fetch_commits(
141146
release_id=first_release.id,
@@ -159,29 +164,11 @@ def test_github_compare_commits_cache_flag_enabled(
159164
self.login_as(user=self.user)
160165
cache.clear()
161166

162-
org = self.create_organization(owner=self.user, name="baz")
163-
repo = Repository.objects.create(
164-
name="example",
165-
provider="integrations:github",
166-
organization_id=org.id,
167-
)
168-
previous_release = Release.objects.create(organization_id=org.id, version="old-release")
169-
previous_commit = Commit.objects.create(
170-
organization_id=org.id, repository_id=repo.id, key="a" * 40
167+
org, repo, previous_release, first_release, second_release, refs = (
168+
self._setup_github_compare_commits_cache_context()
171169
)
172-
ReleaseHeadCommit.objects.create(
173-
organization_id=org.id,
174-
repository_id=repo.id,
175-
release=previous_release,
176-
commit=previous_commit,
177-
)
178-
179-
refs = [{"repository": repo.name, "commit": "b" * 40}]
180170
mock_compare_commits.return_value = self._github_compare_commits_result(repo.name, "b" * 40)
181171

182-
first_release = Release.objects.create(organization_id=org.id, version="new-release-1")
183-
second_release = Release.objects.create(organization_id=org.id, version="new-release-2")
184-
185172
with self.feature(
186173
{"organizations:integrations-github-fetch-commits-compare-cache": [org.slug]}
187174
):
@@ -208,33 +195,15 @@ def test_github_compare_commits_cache_key_variance_on_end_sha(
208195
self.login_as(user=self.user)
209196
cache.clear()
210197

211-
org = self.create_organization(owner=self.user, name="baz")
212-
repo = Repository.objects.create(
213-
name="example",
214-
provider="integrations:github",
215-
organization_id=org.id,
216-
)
217-
previous_release = Release.objects.create(organization_id=org.id, version="old-release")
218-
previous_commit = Commit.objects.create(
219-
organization_id=org.id, repository_id=repo.id, key="a" * 40
198+
org, repo, previous_release, first_release, second_release, refs_first = (
199+
self._setup_github_compare_commits_cache_context()
220200
)
221-
ReleaseHeadCommit.objects.create(
222-
organization_id=org.id,
223-
repository_id=repo.id,
224-
release=previous_release,
225-
commit=previous_commit,
226-
)
227-
228-
refs_first = [{"repository": repo.name, "commit": "b" * 40}]
229201
refs_second = [{"repository": repo.name, "commit": "c" * 40}]
230202
mock_compare_commits.side_effect = [
231203
self._github_compare_commits_result(repo.name, "b" * 40),
232204
self._github_compare_commits_result(repo.name, "c" * 40),
233205
]
234206

235-
first_release = Release.objects.create(organization_id=org.id, version="new-release-1")
236-
second_release = Release.objects.create(organization_id=org.id, version="new-release-2")
237-
238207
with self.feature(
239208
{"organizations:integrations-github-fetch-commits-compare-cache": [org.slug]}
240209
):

0 commit comments

Comments
 (0)