|
146 | 146 | from sentry.silo.base import SiloMode |
147 | 147 | from sentry.snuba.dataset import Dataset |
148 | 148 | from sentry.snuba.models import QuerySubscription, QuerySubscriptionDataSourceHandler |
| 149 | +from sentry.tempest.models import MessageType as TempestMessageType |
| 150 | +from sentry.tempest.models import TempestCredentials |
149 | 151 | from sentry.testutils.outbox import outbox_runner |
150 | 152 | from sentry.testutils.silo import assume_test_silo_mode |
151 | 153 | from sentry.types.activity import ActivityType |
@@ -604,6 +606,34 @@ def create_slack_project_rule(project, integration_id, channel_id=None, channel_ |
604 | 606 | def create_project_key(project): |
605 | 607 | return project.key_set.get_or_create()[0] |
606 | 608 |
|
| 609 | + @staticmethod |
| 610 | + @assume_test_silo_mode(SiloMode.REGION) |
| 611 | + def create_tempest_credentials( |
| 612 | + project: Project, |
| 613 | + created_by: User | None = None, |
| 614 | + client_id: str | None = None, |
| 615 | + client_secret: str | None = None, |
| 616 | + message: str = "", |
| 617 | + message_type: str | None = None, |
| 618 | + latest_fetched_item_id: str | None = None, |
| 619 | + ): |
| 620 | + if client_id is None: |
| 621 | + client_id = str(uuid4()) |
| 622 | + if client_secret is None: |
| 623 | + client_secret = str(uuid4()) |
| 624 | + if message_type is None: |
| 625 | + message_type = TempestMessageType.ERROR |
| 626 | + |
| 627 | + return TempestCredentials.objects.create( |
| 628 | + project=project, |
| 629 | + created_by_id=created_by.id if created_by else None, |
| 630 | + client_id=client_id, |
| 631 | + client_secret=client_secret, |
| 632 | + message=message, |
| 633 | + message_type=message_type, |
| 634 | + latest_fetched_item_id=latest_fetched_item_id, |
| 635 | + ) |
| 636 | + |
607 | 637 | @staticmethod |
608 | 638 | @assume_test_silo_mode(SiloMode.REGION) |
609 | 639 | def create_release( |
|
0 commit comments