// FILE: _St/IG_StYellow/test_ext_side_hidden_modes_v314.js | ROLE: v314 다운로드 방식1/2 d-none 강제 숨김 + v313 Side 기능 보존 회귀
const assert = require('assert');
const fs = require('fs');
const path = require('path');
const root = __dirname;
const html = fs.readFileSync(path.join(root, 'side.html'), 'utf8');
const side = fs.readFileSync(path.join(root, 'side.js'), 'utf8');

// 방식 1/2는 삭제하지 않고 DOM/버튼을 보존하되 d-none으로 강제 숨김한다.
assert.ok(/class="igblue-mode-card d-none" data-mode-title="다운로드 방식 1 · 전체" hidden aria-hidden="true"/.test(html));
assert.ok(/class="igblue-mode-card d-none" data-mode-title="다운로드 방식 2 · 필터 결과" hidden aria-hidden="true"/.test(html));
assert.ok(html.includes('id="down_all_medias"'));
assert.ok(html.includes('id="down_filtered_medias"'));
assert.ok(html.includes('.d-none { display: none !important; }'));

// v313에서 완료한 Side UI/정책은 v314에서도 누락 금지.
assert.ok(html.includes('id="igblue_account_queue_shuffle"'));
assert.ok(html.includes('id="igblue_auto_shuffle"'));
assert.ok(!html.includes('id="download_image_save"'));
assert.ok(html.includes('id="download_random_delay_sec"'));
assert.ok(html.includes('id="igblue_auto8700_schedule1_random_min"'));
assert.ok(html.includes('id="igblue_auto8700_schedule2_random_min"'));
assert.ok(side.includes('function teThumbWidthDefault() { return 100; }'));

console.log('test_ext_side_hidden_modes_v314: OK');
