fix: correct sidebar element IDs, add missing CSS classes, and align test mocks
Three-part consistency defect identified in code review:
1. HTML: Four sidebar elements missing CSS class attributes so all CSS
rules targeting .session-sidebar, .sidebar-toggle-btn,
.sidebar-collapse-btn, and .sidebar-list applied to zero elements.
Added class= attributes to all four.
2. JS: initSidebar(), toggleSidebar(), and bindSidebarClickAway() called
$('sidebar') and $('collapse-btn') — neither ID exists in the DOM.
Corrected to $('session-sidebar') and $('sidebar-collapse-btn').
3. Tests: initSidebar/toggleSidebar mocks matched the wrong IDs, masking
the defect. Updated all six mock conditions to match corrected IDs.
4. Coverage gap: test_html_element_classes did not verify new sidebar
elements carry CSS classes. Added four entries for session-sidebar,
sidebar-toggle-btn, sidebar-collapse-btn, and sidebar-list — these
entries would have caught Defect 1 on Task 1's test run.
All 136 JS + 167 Python tests pass. Zero regressions.
This commit is contained in:
@@ -247,6 +247,14 @@ def test_html_element_classes() -> None:
|
||||
),
|
||||
("session-pill-label", "session-pill__label", "needs max-width truncation"),
|
||||
("session-pill-bell", "session-pill__bell", "needs amber var(--bell) color"),
|
||||
(
|
||||
"session-sidebar",
|
||||
"session-sidebar",
|
||||
"flex-column layout and collapse transition",
|
||||
),
|
||||
("sidebar-toggle-btn", "sidebar-toggle-btn", "36x36 bordered button styles"),
|
||||
("sidebar-collapse-btn", "sidebar-collapse-btn", "chevron button hover styles"),
|
||||
("sidebar-list", "sidebar-list", "flex:1 overflow-y:auto scroll container"),
|
||||
]
|
||||
for el_id, expected_class, reason in cases:
|
||||
el = soup.find(id=el_id)
|
||||
|
||||
Reference in New Issue
Block a user