mirror of
https://github.com/hanzoai/sentinel.git
synced 2026-10-30 14:49:14 +00:00
69 lines
2.5 KiB
Python
69 lines
2.5 KiB
Python
import pytest
|
|
from django.urls import reverse
|
|
|
|
from sentry.testutils.cases import APITestCase, SnubaTestCase
|
|
from sentry.testutils.helpers.datetime import before_now, iso_format
|
|
from sentry.testutils.silo import region_silo_test
|
|
|
|
pytestmark = pytest.mark.sentry_metrics
|
|
|
|
|
|
@region_silo_test
|
|
class OrganizationEventsMetaTest(APITestCase, SnubaTestCase):
|
|
def setUp(self):
|
|
super().setUp()
|
|
self.min_ago = before_now(minutes=1)
|
|
self.login_as(user=self.user)
|
|
self.project_1 = self.create_project()
|
|
self.project_2 = self.create_project()
|
|
self.url = reverse(
|
|
"sentry-api-0-organization-replay-events-meta",
|
|
kwargs={"organization_slug": self.project.organization.slug},
|
|
)
|
|
self.features = {"organizations:session-replay": True}
|
|
|
|
def test_simple(self):
|
|
event_id_a = "a" * 32
|
|
event_id_b = "b" * 32
|
|
|
|
event_a = self.store_event(
|
|
data={"event_id": event_id_a, "timestamp": iso_format(self.min_ago)},
|
|
project_id=self.project_1.id,
|
|
)
|
|
event_b = self.store_event(
|
|
data={"event_id": event_id_b, "timestamp": iso_format(self.min_ago)},
|
|
project_id=self.project_2.id,
|
|
)
|
|
self.store_event(data={"timestamp": iso_format(self.min_ago)}, project_id=self.project_1.id)
|
|
self.store_event(data={"timestamp": iso_format(self.min_ago)}, project_id=self.project_1.id)
|
|
|
|
query = {"query": f"id:[{event_id_a}, {event_id_b}]"}
|
|
with self.feature(self.features):
|
|
response = self.client.get(self.url, query, format="json")
|
|
|
|
expected = [
|
|
{
|
|
"error.type": [],
|
|
"error.value": [],
|
|
"id": event_id_a,
|
|
"issue.id": event_a.group.id,
|
|
"issue": event_a.group.qualified_short_id,
|
|
"project.name": self.project_1.slug,
|
|
"timestamp": iso_format(self.min_ago) + "+00:00",
|
|
"title": "<unlabeled event>",
|
|
},
|
|
{
|
|
"error.type": [],
|
|
"error.value": [],
|
|
"id": event_id_b,
|
|
"issue.id": event_b.group.id,
|
|
"issue": event_b.group.qualified_short_id,
|
|
"project.name": self.project_2.slug,
|
|
"timestamp": iso_format(self.min_ago) + "+00:00",
|
|
"title": "<unlabeled event>",
|
|
},
|
|
]
|
|
|
|
assert response.status_code == 200, response.content
|
|
assert sorted(response.data["data"], key=lambda v: v["id"]) == expected
|