Skip to content

Commit a857039

Browse files
committed
use enum
1 parent 0cf0fd5 commit a857039

File tree

4 files changed

+14
-6
lines changed

4 files changed

+14
-6
lines changed

src/sentry/interfaces/stacktrace.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,9 +100,9 @@ def is_newest_frame_first(event):
100100
filter=dict(user_ids=[env.request.user.id], keys=["stacktrace_order"])
101101
)
102102
display = get_option_from_list(options, default=None)
103-
if display == "1":
103+
if display == StacktraceOrder.MOST_RECENT_LAST:
104104
newest_first = False
105-
elif display == "2":
105+
elif display == StacktraceOrder.MOST_RECENT_FIRST:
106106
newest_first = True
107107

108108
return newest_first

src/sentry/users/api/serializers/user.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
from sentry.app import env
1616
from sentry.auth.elevated_mode import has_elevated_mode
1717
from sentry.hybridcloud.services.organization_mapping import organization_mapping_service
18+
from sentry.interfaces.stacktrace import StacktraceOrder
1819
from sentry.models.authidentity import AuthIdentity
1920
from sentry.models.organization import OrganizationStatus
2021
from sentry.models.organizationmapping import OrganizationMapping
@@ -191,7 +192,10 @@ def serialize(
191192
for o in UserOption.objects.filter(user_id=user.id, project_id__isnull=True)
192193
if o.value is not None
193194
}
194-
stacktrace_order = int(options.get("stacktrace_order", -1) or -1)
195+
196+
stacktrace_order = int(
197+
options.get("stacktrace_order", StacktraceOrder.DEFAULT) or StacktraceOrder.DEFAULT
198+
)
195199

196200
d["options"] = {
197201
"theme": options.get("theme") or "light",

src/sentry/users/models/user_option.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ class UserOption(Model):
185185
- self_notifications
186186
- "Notify Me About My Own Activity"
187187
- stacktrace_order
188-
- default, most recent first, most recent last
188+
- default, most recent first, most recent last (see `StacktraceOrder` enum)
189189
- subscribe_by_default
190190
- "Only On Issues I Subscribe To", "Only On Deploys With My Commits"
191191
- subscribe_notes

tests/sentry/users/api/endpoints/test_user_details.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
from pytest import fixture
33

44
from sentry.deletions.tasks.hybrid_cloud import schedule_hybrid_cloud_foreign_key_jobs
5+
from sentry.interfaces.stacktrace import StacktraceOrder
56
from sentry.models.deletedorganization import DeletedOrganization
67
from sentry.models.organization import Organization, OrganizationStatus
78
from sentry.models.organizationmember import OrganizationMember
@@ -113,7 +114,7 @@ def test_simple(self) -> None:
113114
"theme": "system",
114115
"defaultIssueEvent": "latest",
115116
"timezone": "UTC",
116-
"stacktraceOrder": "2",
117+
"stacktraceOrder": StacktraceOrder.MOST_RECENT_FIRST,
117118
"language": "fr",
118119
"clock24Hours": True,
119120
"extra": True,
@@ -135,7 +136,10 @@ def test_simple(self) -> None:
135136
assert UserOption.objects.get_value(user=self.user, key="theme") == "system"
136137
assert UserOption.objects.get_value(user=self.user, key="default_issue_event") == "latest"
137138
assert UserOption.objects.get_value(user=self.user, key="timezone") == "UTC"
138-
assert UserOption.objects.get_value(user=self.user, key="stacktrace_order") == "2"
139+
assert (
140+
UserOption.objects.get_value(user=self.user, key="stacktrace_order")
141+
== StacktraceOrder.MOST_RECENT_FIRST
142+
)
139143
assert UserOption.objects.get_value(user=self.user, key="language") == "fr"
140144
assert UserOption.objects.get_value(user=self.user, key="clock_24_hours")
141145
assert UserOption.objects.get_value(

0 commit comments

Comments
 (0)