Skip to content

Commit 68d71e6

Browse files
committed
pr suggestions
1 parent 50fea34 commit 68d71e6

File tree

2 files changed

+21
-24
lines changed

2 files changed

+21
-24
lines changed

src/sentry/integrations/slack/message_builder/notifications/rule_save_edit.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ def build(self) -> SlackBlock:
5151

5252
if not self.new and self.changed:
5353
changes_text = "*Changes*\n"
54-
for label, changes in self.changed.items():
54+
for changes in self.changed.values():
5555
for change in changes:
5656
changes_text += f"• {change}\n"
5757

src/sentry/rules/actions/utils.py

Lines changed: 20 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -17,29 +17,26 @@ def get_updated_rule_data(rule: Rule) -> dict[str, Any]:
1717

1818

1919
def check_value_changed(
20-
rule_data: dict[str, Any], rule_data_before: dict[str, Any], key: str, word: str
21-
) -> str:
22-
if rule_data.get(key) != rule_data_before.get(key):
23-
old_value = rule_data_before.get(key)
24-
new_value = rule_data.get(key)
20+
present_state: dict[str, Any], prior_state: dict[str, Any], key: str, word: str
21+
) -> str | None:
22+
if present_state.get(key) != prior_state.get(key):
23+
old_value = prior_state.get(key)
24+
new_value = present_state.get(key)
2525
return f"Changed {word} from *{old_value}* to *{new_value}*"
26-
return ""
2726

2827

29-
def check_added_or_removed(
30-
rule_data_after: dict[str, Any],
31-
rule_data_before: dict[str, Any],
28+
def generate_diff_labels(
29+
present_state: dict[str, Any],
30+
prior_state: dict[str, Any],
3231
rule: Rule,
3332
changed_data: DefaultDict[str, list[str]],
3433
key: str,
35-
rule_section_type: str,
36-
added: bool,
34+
statement: str,
3735
) -> DefaultDict[str, list[str]]:
38-
verb = "Added" if added else "Removed"
39-
for data in rule_data_before.get(key, []):
40-
if data not in rule_data_after.get(key, []):
36+
for data in prior_state.get(key, []):
37+
if data not in present_state.get(key, []):
4138
label = generate_rule_label(rule.project, rule, data)
42-
changed_data[data["id"]].append(f"{verb} {rule_section_type} '{label}'")
39+
changed_data[data["id"]].append(statement.format(label))
4340

4441
return changed_data
4542

@@ -51,17 +48,17 @@ def get_changed_data(
5148
Generate a list per type of issue alert rule data of what changes occurred on edit.
5249
"""
5350
changed_data: DefaultDict[str, list[str]] = defaultdict(list)
54-
changed_data = check_added_or_removed(
55-
rule_data_before, rule_data, rule, changed_data, "conditions", "condition", added=True
51+
changed_data = generate_diff_labels(
52+
rule_data_before, rule_data, rule, changed_data, "conditions", "Added condition '{}'"
5653
)
57-
changed_data = check_added_or_removed(
58-
rule_data, rule_data_before, rule, changed_data, "conditions", "condition", added=False
54+
changed_data = generate_diff_labels(
55+
rule_data, rule_data_before, rule, changed_data, "conditions", "Removed condition '{}'"
5956
)
60-
changed_data = check_added_or_removed(
61-
rule_data_before, rule_data, rule, changed_data, "actions", "action", added=True
57+
changed_data = generate_diff_labels(
58+
rule_data_before, rule_data, rule, changed_data, "actions", "Added action '{}'"
6259
)
63-
changed_data = check_added_or_removed(
64-
rule_data, rule_data_before, rule, changed_data, "actions", "action", added=False
60+
changed_data = generate_diff_labels(
61+
rule_data, rule_data_before, rule, changed_data, "actions", "Removed action '{}'"
6562
)
6663

6764
frequency_text = check_value_changed(rule_data, rule_data_before, "frequency", "frequency")

0 commit comments

Comments
 (0)