Skip to content

Commit 5fff3df

Browse files
Address code review feedback: improve test isolation and simplify variable usage
Co-authored-by: miroslavpojer <[email protected]>
1 parent 223c802 commit 5fff3df

File tree

2 files changed

+15
-28
lines changed

2 files changed

+15
-28
lines changed

release_notes_generator/chapters/custom_chapters.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -100,16 +100,15 @@ def populate(self, records: dict[str, Record]) -> None:
100100
if any(lbl in ch.labels for lbl in record_labels):
101101
if record_id not in ch.rows:
102102
# Only count toward duplicity for visible (non-hidden) chapters
103-
is_hidden = ch.hidden
104-
if not is_hidden:
103+
if not ch.hidden:
105104
record.add_to_chapter_presence(ch.title)
106105
# For hidden chapters: don't increment duplicity counter
107106
# For visible chapters: increment duplicity counter (existing behavior)
108-
ch.add_row(record_id, record.to_chapter_row(not is_hidden))
107+
ch.add_row(record_id, record.to_chapter_row(not ch.hidden))
109108
# Track for backward compatibility (not used for gating anymore)
110109
if record_id not in self.populated_record_numbers_list:
111110
self.populated_record_numbers_list.append(record_id)
112-
if is_hidden and ActionInputs.get_verbose():
111+
if ch.hidden and ActionInputs.get_verbose():
113112
logger.debug(
114113
"Record %s assigned to hidden chapter '%s' (not counted for duplicity)",
115114
record_id,

tests/unit/release_notes_generator/chapters/test_custom_chapters.py

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -523,47 +523,35 @@ def test_to_string_hidden_empty_chapter_not_shown():
523523
assert result == ""
524524

525525

526-
def test_to_string_debug_logging_for_hidden(caplog):
526+
def test_to_string_debug_logging_for_hidden(caplog, monkeypatch):
527527
# Arrange
528528
caplog.set_level("DEBUG")
529529
cc = CustomChapters()
530530
cc.from_yaml_array([{"title": "Hidden", "labels": "bug", "hidden": True}])
531531
cc.chapters["Hidden"].add_row(1, "Bug fix")
532532
# Mock verbose mode
533-
import release_notes_generator.action_inputs
534-
original_get_verbose = release_notes_generator.action_inputs.ActionInputs.get_verbose
535-
release_notes_generator.action_inputs.ActionInputs.get_verbose = staticmethod(lambda: True)
533+
monkeypatch.setattr(ActionInputs, "get_verbose", staticmethod(lambda: True))
536534
# Act
537-
try:
538-
cc.to_string()
539-
# Assert
540-
assert any("Skipping hidden chapter" in r.message for r in caplog.records)
541-
assert any("Hidden" in r.message and "1 records tracked" in r.message for r in caplog.records)
542-
finally:
543-
# Restore
544-
release_notes_generator.action_inputs.ActionInputs.get_verbose = original_get_verbose
535+
cc.to_string()
536+
# Assert
537+
assert any("Skipping hidden chapter" in r.message for r in caplog.records)
538+
assert any("Hidden" in r.message and "1 records tracked" in r.message for r in caplog.records)
545539

546540

547-
def test_populate_debug_logging_for_hidden_assignment(record_stub, caplog):
541+
def test_populate_debug_logging_for_hidden_assignment(record_stub, caplog, monkeypatch):
548542
# Arrange
549543
caplog.set_level("DEBUG")
550544
cc = CustomChapters()
551545
cc.from_yaml_array([{"title": "Hidden", "labels": "bug", "hidden": True}])
552546
record = record_stub("org/repo#1", ["bug"])
553547
records = {"org/repo#1": record}
554548
# Mock verbose mode
555-
import release_notes_generator.action_inputs
556-
original_get_verbose = release_notes_generator.action_inputs.ActionInputs.get_verbose
557-
release_notes_generator.action_inputs.ActionInputs.get_verbose = staticmethod(lambda: True)
549+
monkeypatch.setattr(ActionInputs, "get_verbose", staticmethod(lambda: True))
558550
# Act
559-
try:
560-
cc.populate(records)
561-
# Assert
562-
assert any("assigned to hidden chapter" in r.message.lower() for r in caplog.records)
563-
assert any("not counted for duplicity" in r.message.lower() for r in caplog.records)
564-
finally:
565-
# Restore
566-
release_notes_generator.action_inputs.ActionInputs.get_verbose = original_get_verbose
551+
cc.populate(records)
552+
# Assert
553+
assert any("assigned to hidden chapter" in r.message.lower() for r in caplog.records)
554+
assert any("not counted for duplicity" in r.message.lower() for r in caplog.records)
567555

568556

569557
def test_hidden_chapter_info_logging(caplog):

0 commit comments

Comments
 (0)