Record JamesDSP integration verification results
This commit is contained in:
@@ -10,7 +10,7 @@ import {createRequire} from 'node:module';
|
||||
import {chromium,webkit} from 'playwright';
|
||||
const repo=resolve(import.meta.dirname,'..'),args=process.argv.slice(2);
|
||||
const opt=(k,d)=>args.includes(k)?args[args.indexOf(k)+1]:d;
|
||||
const oldTag='1175f1a1d2c1',target=opt('--target','main'),engine=opt('--browser','all');
|
||||
const oldTag='1175f1a1d2c1',target=opt('--target','HEAD'),engine=opt('--browser','all');
|
||||
assert.ok(['all','chromium','webkit'].includes(engine));
|
||||
execFileSync('bash',[join(repo,'perf/make-shell-fixture.sh'),'b77938a',oldTag],{cwd:repo,stdio:'inherit'});
|
||||
const scratch=mkdtempSync(join(repo,'perf/.tmp/settings-'));
|
||||
@@ -70,7 +70,9 @@ async function run(name){
|
||||
const {migrate}=require(join(scratch,'new/frontend/eq-parameters.js'));const expected=structuredClone(result.old);if(expected.eq?.g?.length===5)expected.eq.g=migrate(expected.eq.g);
|
||||
for(const key of new Set([...Object.keys(result.old),...Object.keys(result.upgraded)]))result.diff.push({key,before:result.old[key],after:result.upgraded[key],equal:JSON.stringify(result.old[key])===JSON.stringify(result.upgraded[key]),expectedMigration:key==='eq'&&result.old.eq?.g?.length===5});
|
||||
assert.deepEqual(result.upgraded,expected,'all persisted settings preserved except deliberate 5→10 EQ migration');await behaviour('upgraded');
|
||||
await page.evaluate(()=>{data.settings.jamesDsp={enabled:false,preset:'warm',params:{'eq.band0':3,'tube.drive':1.5}};persist();});await page.reload();await page.waitForFunction(()=>typeof data!=='undefined');await openSettings();await page.locator('[data-section="playback"]').click();
|
||||
await openSettings();await page.locator('[data-section="playback"]').evaluate(e=>e.click());await page.locator('#setDspPreset').evaluate(e=>{e.value='warm';e.dispatchEvent(new Event('change',{bubbles:true}));});
|
||||
for(const [key,value] of [['eq.band0','3'],['tube.drive','1.5']])await page.locator(`[data-dsp-param="${key}"]`).evaluate((e,v)=>{e.value=v;e.dispatchEvent(new Event('input',{bubbles:true}));},value);
|
||||
await sleep(600);await page.reload();await page.waitForFunction(()=>typeof data!=='undefined');await openSettings();await page.locator('[data-section="playback"]').evaluate(e=>e.click());
|
||||
const james=await page.evaluate(()=>data.settings.jamesDsp);assert.deepEqual(james,{enabled:false,preset:'warm',params:{'eq.band0':3,'tube.drive':1.5}});assert.equal(await page.locator('#setSoundEngine').inputValue(),'standard');assert.equal(await page.locator('#setDspPreset').inputValue(),'warm');result.jamesDspSettingsPersisted=true;
|
||||
await page.evaluate(()=>{data.settings.jamesDsp.enabled=false;persist();});
|
||||
const local=await settings(),remote={...local,saveBeforePlay:false,autoPreload:false,layout:'classic',quality:'auto'};
|
||||
|
||||
Reference in New Issue
Block a user