|
@@ -6080,6 +6080,55 @@ class OrganizationEventsErrorsDatasetEndpointTest(OrganizationEventsEndpointTest
|
|
|
assert response.status_code == 200, response.content
|
|
|
assert response.data["data"][0]["count()"] == 1
|
|
|
|
|
|
+ def test_is_status(self):
|
|
|
+ with self.options({"issues.group_attributes.send_kafka": True}):
|
|
|
+ self.store_event(
|
|
|
+ data={
|
|
|
+ "event_id": "a" * 32,
|
|
|
+ "timestamp": self.ten_mins_ago_iso,
|
|
|
+ "fingerprint": ["group1"],
|
|
|
+ },
|
|
|
+ project_id=self.project.id,
|
|
|
+ ).group
|
|
|
+ group_2 = self.store_event(
|
|
|
+ data={
|
|
|
+ "event_id": "b" * 32,
|
|
|
+ "timestamp": self.ten_mins_ago_iso,
|
|
|
+ "fingerprint": ["group2"],
|
|
|
+ },
|
|
|
+ project_id=self.project.id,
|
|
|
+ ).group
|
|
|
+ group_3 = self.store_event(
|
|
|
+ data={
|
|
|
+ "event_id": "c" * 32,
|
|
|
+ "timestamp": self.ten_mins_ago_iso,
|
|
|
+ "fingerprint": ["group3"],
|
|
|
+ },
|
|
|
+ project_id=self.project.id,
|
|
|
+ ).group
|
|
|
+
|
|
|
+ query = {
|
|
|
+ "field": ["count()"],
|
|
|
+ "statsPeriod": "2h",
|
|
|
+ "query": "is:unresolved",
|
|
|
+ "dataset": "errors",
|
|
|
+ }
|
|
|
+ response = self.do_request(query)
|
|
|
+ assert response.status_code == 200, response.content
|
|
|
+ assert response.data["data"][0]["count()"] == 3
|
|
|
+ group_2.status = GroupStatus.IGNORED
|
|
|
+ group_2.substatus = GroupSubStatus.FOREVER
|
|
|
+ group_2.save(update_fields=["status", "substatus"])
|
|
|
+ group_3.status = GroupStatus.IGNORED
|
|
|
+ group_3.substatus = GroupSubStatus.FOREVER
|
|
|
+ group_3.save(update_fields=["status", "substatus"])
|
|
|
+ # XXX: Snuba caches query results, so change the time period so that the query
|
|
|
+ # changes enough to bust the cache.
|
|
|
+ query["statsPeriod"] = "3h"
|
|
|
+ response = self.do_request(query)
|
|
|
+ assert response.status_code == 200, response.content
|
|
|
+ assert response.data["data"][0]["count()"] == 1
|
|
|
+
|
|
|
def test_short_group_id(self):
|
|
|
group_1 = self.store_event(
|
|
|
data={
|