|
7 | 7 |
|
8 | 8 | from sentry.constants import ObjectStatus |
9 | 9 | from sentry.prevent.models import PreventAIConfiguration |
10 | | -from sentry.prevent.types.config import PREVENT_AI_CONFIG_DEFAULT |
| 10 | +from sentry.prevent.types.config import PREVENT_AI_CONFIG_DEFAULT, PREVENT_AI_CONFIG_DEFAULT_V1 |
11 | 11 | from sentry.silo.base import SiloMode |
12 | 12 | from sentry.testutils.cases import APITestCase |
13 | 13 | from sentry.testutils.silo import assume_test_silo_mode |
@@ -157,6 +157,52 @@ def test_returns_default_when_no_config(self): |
157 | 157 | assert resp.status_code == 200 |
158 | 158 | assert resp.data == PREVENT_AI_CONFIG_DEFAULT |
159 | 159 | assert resp.data["organization"] == {} |
| 160 | + # Default config has on_new_commit disabled for bug_prediction |
| 161 | + assert ( |
| 162 | + resp.data["default_org_config"]["org_defaults"]["bug_prediction"]["triggers"][ |
| 163 | + "on_new_commit" |
| 164 | + ] |
| 165 | + is False |
| 166 | + ) |
| 167 | + |
| 168 | + @patch( |
| 169 | + "sentry.overwatch.endpoints.overwatch_rpc.settings.OVERWATCH_RPC_SHARED_SECRET", |
| 170 | + ["test-secret"], |
| 171 | + ) |
| 172 | + def test_returns_v1_default_when_feature_flag_enabled(self): |
| 173 | + """Test that V1 default config is returned when code-review-run-per-commit flag is enabled.""" |
| 174 | + org = self.create_organization() |
| 175 | + git_org_name = "test-github-org" |
| 176 | + |
| 177 | + with assume_test_silo_mode(SiloMode.CONTROL): |
| 178 | + self.create_integration( |
| 179 | + organization=org, |
| 180 | + provider="github", |
| 181 | + name=git_org_name, |
| 182 | + external_id=f"github:{git_org_name}", |
| 183 | + status=ObjectStatus.ACTIVE, |
| 184 | + ) |
| 185 | + |
| 186 | + url = reverse("sentry-api-0-prevent-pr-review-configs-resolved") |
| 187 | + params = { |
| 188 | + "sentryOrgId": str(org.id), |
| 189 | + "gitOrgName": git_org_name, |
| 190 | + "provider": "github", |
| 191 | + } |
| 192 | + auth = self._auth_header_for_get(url, params, "test-secret") |
| 193 | + |
| 194 | + with self.feature({"organizations:code-review-run-per-commit": org}): |
| 195 | + resp = self.client.get(url, params, HTTP_AUTHORIZATION=auth) |
| 196 | + assert resp.status_code == 200 |
| 197 | + assert resp.data == PREVENT_AI_CONFIG_DEFAULT_V1 |
| 198 | + # V1 config has on_new_commit enabled for bug_prediction |
| 199 | + assert ( |
| 200 | + resp.data["default_org_config"]["org_defaults"]["bug_prediction"]["triggers"][ |
| 201 | + "on_new_commit" |
| 202 | + ] |
| 203 | + is True |
| 204 | + ) |
| 205 | + assert resp.data["organization"] == {} |
160 | 206 |
|
161 | 207 | @patch( |
162 | 208 | "sentry.overwatch.endpoints.overwatch_rpc.settings.OVERWATCH_RPC_SHARED_SECRET", |
|
0 commit comments