fix tests

recently introduced (e59fd3a225) caching made it so that repeated calls to
create_release_if_needed no longer work if releases have been created in the
meantime.

In actual usage create_release_if_needed is always called on a single project
so I _think_ just calling `fresh` in the tests is good way to get to green
tests again.
This commit is contained in:
Klaas van Schelven
2024-09-12 12:17:39 +02:00
parent d5c84ded0e
commit 10c91ccbdc

View File

@@ -177,7 +177,7 @@ class RegressionIssueTestCase(DjangoTestCase):
def test_issue_is_regression_no_releases(self):
project = Project.objects.create()
create_release_if_needed(project, "", create_event(project))
create_release_if_needed(fresh(project), "", create_event(project))
# new issue is not a regression
issue = Issue.objects.create(project=project, **denormalized_issue_fields())
@@ -196,7 +196,7 @@ class RegressionIssueTestCase(DjangoTestCase):
def test_issue_had_no_releases_but_now_does(self):
project = Project.objects.create()
create_release_if_needed(project, "", create_event(project))
create_release_if_needed(fresh(project), "", create_event(project))
# new issue is not a regression
issue = Issue.objects.create(project=project, **denormalized_issue_fields())
@@ -207,15 +207,15 @@ class RegressionIssueTestCase(DjangoTestCase):
issue.save()
# a new release happens
create_release_if_needed(project, "1.0.0", create_event(project))
create_release_if_needed(fresh(project), "1.0.0", create_event(project))
self.assertTrue(issue_is_regression(fresh(issue), "1.0.0"))
def test_issue_is_regression_with_releases_resolve_by_latest(self):
project = Project.objects.create()
create_release_if_needed(project, "1.0.0", create_event(project))
create_release_if_needed(project, "2.0.0", create_event(project))
create_release_if_needed(fresh(project), "1.0.0", create_event(project))
create_release_if_needed(fresh(project), "2.0.0", create_event(project))
# new issue is not a regression
issue = Issue.objects.create(project=project, **denormalized_issue_fields())
@@ -228,7 +228,7 @@ class RegressionIssueTestCase(DjangoTestCase):
self.assertTrue(issue_is_regression(fresh(issue), "2.0.0"))
# a new release happens, and the issue is seen there: also a regression
create_release_if_needed(project, "3.0.0", create_event(project))
create_release_if_needed(fresh(project), "3.0.0", create_event(project))
self.assertTrue(issue_is_regression(fresh(issue), "3.0.0"))
# reopen the issue (as is done when a real regression is seen; or as would be done manually); nothing is a
@@ -241,8 +241,8 @@ class RegressionIssueTestCase(DjangoTestCase):
def test_issue_is_regression_with_releases_resolve_by_next(self):
project = Project.objects.create()
create_release_if_needed(project, "1.0.0", create_event(project))
create_release_if_needed(project, "2.0.0", create_event(project))
create_release_if_needed(fresh(project), "1.0.0", create_event(project))
create_release_if_needed(fresh(project), "2.0.0", create_event(project))
# new issue is not a regression
issue = Issue.objects.create(project=project, **denormalized_issue_fields())
@@ -255,11 +255,11 @@ class RegressionIssueTestCase(DjangoTestCase):
self.assertFalse(issue_is_regression(fresh(issue), "2.0.0"))
# a new release appears (as part of a new event); this is a regression
create_release_if_needed(project, "3.0.0", create_event(project))
create_release_if_needed(fresh(project), "3.0.0", create_event(project))
self.assertTrue(issue_is_regression(fresh(issue), "3.0.0"))
# first-seen at any later release: regression
create_release_if_needed(project, "4.0.0", create_event(project))
create_release_if_needed(fresh(project), "4.0.0", create_event(project))
self.assertTrue(issue_is_regression(fresh(issue), "4.0.0"))