diff --git a/src/sentry/grouping/parameterization.py b/src/sentry/grouping/parameterization.py index bfcef71f5d2ba5..c06a719e833f2b 100644 --- a/src/sentry/grouping/parameterization.py +++ b/src/sentry/grouping/parameterization.py @@ -11,7 +11,6 @@ "ParameterizationCallableExperiment", "ParameterizationExperiment", "ParameterizationRegex", - "ParameterizationRegexExperiment", "Parameterizer", "UniqueIdExperiment", ] @@ -206,15 +205,6 @@ def run(self, content: str, callback: Callable[[str, int], None]) -> str: return content -class ParameterizationRegexExperiment(ParameterizationRegex): - def run( - self, - content: str, - callback: Callable[[re.Match[str]], str], - ) -> str: - return self.compiled_pattern.sub(callback, content) - - class _UniqueId: # just a namespace for the uniq_id logic, no need to instantiate @@ -275,7 +265,7 @@ def replace_uniq_ids_in_str(string: str) -> tuple[str, int]: ) -ParameterizationExperiment = ParameterizationCallableExperiment | ParameterizationRegexExperiment +ParameterizationExperiment = ParameterizationCallableExperiment class Parameterizer: @@ -355,10 +345,8 @@ def _handle_regex_match(match: re.Match[str]) -> str: for experiment in self._experiments: if not should_run(experiment.name): continue - if isinstance(experiment, ParameterizationCallableExperiment): - content = experiment.run(content, _incr_counter) - else: - content = experiment.run(content, _handle_regex_match) + + content = experiment.run(content, _incr_counter) return content diff --git a/tests/sentry/grouping/test_parameterization.py b/tests/sentry/grouping/test_parameterization.py index 09900621e09fab..3504abaf28edaa 100644 --- a/tests/sentry/grouping/test_parameterization.py +++ b/tests/sentry/grouping/test_parameterization.py @@ -1,12 +1,6 @@ -from unittest import mock - import pytest -from sentry.grouping.parameterization import ( - ParameterizationRegexExperiment, - Parameterizer, - UniqueIdExperiment, -) +from sentry.grouping.parameterization import Parameterizer, UniqueIdExperiment from sentry.grouping.strategies.message import REGEX_PATTERN_KEYS @@ -227,43 +221,6 @@ def test_parameterize_experiment(name, input, expected, parameterizer): assert experiments[0] == UniqueIdExperiment -def test_parameterize_regex_experiment(): - """ - We don't have any of these yet, but we need to test that they work - """ - FooExperiment = ParameterizationRegexExperiment(name="foo", raw_pattern=r"f[oO]{2}") - - parameterizer = Parameterizer( - regex_pattern_keys=(), - experiments=(FooExperiment,), - ) - input_str = "blah foobarbaz fooooo" - normalized = parameterizer.parameterize_all(input_str) - assert normalized == "blah barbaz ooo" - assert len(parameterizer.get_successful_experiments()) == 1 - assert parameterizer.get_successful_experiments()[0] == FooExperiment - - -def test_parameterize_regex_experiment_cached_compiled(): - - with mock.patch.object( - ParameterizationRegexExperiment, - "pattern", - new_callable=mock.PropertyMock, - return_value=r"(?Pf[oO]{2})", - ) as mocked_pattern: - FooExperiment = ParameterizationRegexExperiment(name="foo", raw_pattern=r"f[oO]{2}") - parameterizer = Parameterizer( - regex_pattern_keys=(), - experiments=(FooExperiment,), - ) - input_str = "blah foobarbaz fooooo" - _ = parameterizer.parameterize_all(input_str) - _ = parameterizer.parameterize_all(input_str) - - mocked_pattern.assert_called_once() - - # These are test cases that we should fix @pytest.mark.xfail() @pytest.mark.parametrize(