|
@@ -553,15 +553,22 @@ class GroupListTest(APITestCase, SnubaTestCase):
|
|
|
def test_seen_stats(self):
|
|
|
with self.feature("organizations:dynamic-issue-counts"):
|
|
|
self.store_event(
|
|
|
- data={"timestamp": iso_format(before_now(seconds=500)), "fingerprint": ["group-1"]},
|
|
|
+ data={
|
|
|
+ "timestamp": iso_format(before_now(seconds=500)),
|
|
|
+ "fingerprint": ["group-1"],
|
|
|
+ },
|
|
|
project_id=self.project.id,
|
|
|
)
|
|
|
before_now_300_seconds = iso_format(before_now(seconds=300))
|
|
|
+ before_now_350_seconds = iso_format(before_now(seconds=350))
|
|
|
event2 = self.store_event(
|
|
|
data={"timestamp": before_now_300_seconds, "fingerprint": ["group-2"]},
|
|
|
project_id=self.project.id,
|
|
|
)
|
|
|
group2 = event2.group
|
|
|
+ group2.first_seen = before_now_350_seconds
|
|
|
+ group2.times_seen = 55
|
|
|
+ group2.save()
|
|
|
before_now_250_seconds = iso_format(before_now(seconds=250))
|
|
|
self.store_event(
|
|
|
data={
|
|
@@ -600,6 +607,7 @@ class GroupListTest(APITestCase, SnubaTestCase):
|
|
|
|
|
|
self.login_as(user=self.user)
|
|
|
response = self.get_response(sort_by="date", limit=10, query="server:example.com")
|
|
|
+
|
|
|
assert response.status_code == 200
|
|
|
assert len(response.data) == 2
|
|
|
assert int(response.data[0]["id"]) == group2.id
|
|
@@ -609,13 +617,13 @@ class GroupListTest(APITestCase, SnubaTestCase):
|
|
|
assert response.data[0]["lifetime"]["stats"] is None
|
|
|
assert response.data[0]["filtered"]["stats"] != response.data[0]["stats"]
|
|
|
|
|
|
- assert response.data[0]["lifetime"]["count"] == "4"
|
|
|
assert response.data[0]["lifetime"]["firstSeen"] == parse_datetime(
|
|
|
- before_now_300_seconds
|
|
|
+ before_now_350_seconds # Should match overridden value, not event value
|
|
|
).replace(tzinfo=timezone.utc)
|
|
|
assert response.data[0]["lifetime"]["lastSeen"] == parse_datetime(
|
|
|
before_now_100_seconds
|
|
|
).replace(tzinfo=timezone.utc)
|
|
|
+ assert response.data[0]["lifetime"]["count"] == "55"
|
|
|
|
|
|
assert response.data[0]["filtered"]["count"] == "2"
|
|
|
assert response.data[0]["filtered"]["firstSeen"] == parse_datetime(
|
|
@@ -634,9 +642,9 @@ class GroupListTest(APITestCase, SnubaTestCase):
|
|
|
assert response.data[0]["filtered"] is None
|
|
|
assert response.data[0]["lifetime"]["stats"] is None
|
|
|
|
|
|
- assert response.data[0]["lifetime"]["count"] == "4"
|
|
|
+ assert response.data[0]["lifetime"]["count"] == "55"
|
|
|
assert response.data[0]["lifetime"]["firstSeen"] == parse_datetime(
|
|
|
- before_now_300_seconds
|
|
|
+ before_now_350_seconds # Should match overridden value, not event value
|
|
|
).replace(tzinfo=timezone.utc)
|
|
|
assert response.data[0]["lifetime"]["lastSeen"] == parse_datetime(
|
|
|
before_now_100_seconds
|