diff --git a/public/index.html b/public/index.html index 111d04a..3b5f6cd 100644 --- a/public/index.html +++ b/public/index.html @@ -22,9 +22,9 @@ - - - + + + @@ -81,29 +81,29 @@
- - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/packets.js b/public/packets.js index d5fe6ec..06b7caf 100644 --- a/public/packets.js +++ b/public/packets.js @@ -180,7 +180,7 @@ filters.node = routeParam; } } - app.innerHTML = `
+ app.innerHTML = `
diff --git a/test-frontend-helpers.js b/test-frontend-helpers.js index 8bfd60a..b41a3ed 100644 --- a/test-frontend-helpers.js +++ b/test-frontend-helpers.js @@ -1116,6 +1116,30 @@ console.log('\n=== compare.js: comparePacketSets ==='); }); } +// ===== Packets page: detail pane starts collapsed ===== +{ + console.log('\nPackets page — detail pane initial state:'); + const packetsSource = fs.readFileSync('public/packets.js', 'utf8'); + + test('split-layout starts with detail-collapsed class', () => { + // The template literal that creates the split-layout must include detail-collapsed + const match = packetsSource.match(/innerHTML\s*=\s*`
/); + assert.ok(match, 'should find split-layout innerHTML assignment'); + assert.ok(match[1].includes('detail-collapsed'), + 'split-layout initial class should include detail-collapsed, got: "split-layout' + match[1] + '"'); + }); + + test('closeDetailPanel adds detail-collapsed', () => { + assert.ok(packetsSource.includes("classList.add('detail-collapsed')"), + 'closeDetailPanel should add detail-collapsed class'); + }); + + test('selectPacket removes detail-collapsed', () => { + assert.ok(packetsSource.includes("classList.remove('detail-collapsed')"), + 'selectPacket should remove detail-collapsed class'); + }); +} + // ===== SUMMARY ===== console.log(`\n${'═'.repeat(40)}`); console.log(` Frontend helpers: ${passed} passed, ${failed} failed`);