mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-04 10:24:02 +00:00
refactor(ui): own Display control subscriptions and cleanup
This commit is contained in:
1 parent
795ed68192
commit
ffc65dd844
11 files changed
+307
-166
No files matched your search
@@ -294,5 +294,10 @@
|
||||
"src/ui/styleParameters.js"
|
||||
],
|
||||
"external": []
|
||||
},
|
||||
"display-controls": {
|
||||
"exports": ["./ui/display"],
|
||||
"modules": ["src/ui/displayControls.js"],
|
||||
"external": []
|
||||
}
|
||||
}
|
||||
@@ -140,6 +140,34 @@ try {
|
||||
hudBefore,
|
||||
),
|
||||
);
|
||||
const displayBefore = await page.evaluate(() => {
|
||||
const manager = window.__godsEyeView.styleManager;
|
||||
manager._setBloomEnabled(true);
|
||||
manager._bloomSlider.value = '80';
|
||||
manager._bloomSlider.dispatchEvent(new Event('input', { bubbles: true }));
|
||||
manager._bloomSlider.focus();
|
||||
return { value: Number(manager._bloomSlider.value), contrast: manager._bloomStage.uniforms.contrast };
|
||||
});
|
||||
await page.keyboard.press('ArrowRight');
|
||||
check('native Display slider updates effect state', await page.evaluate((before) => {
|
||||
const manager = window.__godsEyeView.styleManager;
|
||||
return Number(manager._bloomSlider.value) > before.value && manager._bloomStage.uniforms.contrast < before.contrast;
|
||||
}, displayBefore));
|
||||
check('Display buttons toggle current state once', await page.evaluate(() => {
|
||||
const manager = window.__godsEyeView.styleManager;
|
||||
const before = manager.bloomEnabled;
|
||||
manager._bloomBtn.click();
|
||||
const changed = manager.bloomEnabled !== before;
|
||||
manager._bloomBtn.click();
|
||||
return changed && manager.bloomEnabled === before;
|
||||
}));
|
||||
check('Display rebind removes old listeners', await page.evaluate(() => {
|
||||
const manager = window.__godsEyeView.styleManager;
|
||||
manager._initUI();
|
||||
const before = manager.bloomEnabled;
|
||||
manager._bloomBtn.click();
|
||||
return manager.bloomEnabled !== before;
|
||||
}));
|
||||
fs.mkdirSync('qa-shots/visual-input', { recursive: true });
|
||||
await page.screenshot({ path: 'qa-shots/visual-input/desktop.png' });
|
||||
await page.setViewport({ width: 620, height: 900 });
|
||||
@@ -184,6 +212,16 @@ try {
|
||||
);
|
||||
}),
|
||||
);
|
||||
check('destroyed Display controls cannot change settings', await page.evaluate(() => {
|
||||
const manager = window.__godsEyeView.styleManager;
|
||||
manager._displayControls.destroy();
|
||||
const before = manager.bloomEnabled;
|
||||
const contrast = manager._bloomStage.uniforms.contrast;
|
||||
manager._bloomBtn.click();
|
||||
manager._bloomSlider.value = '15';
|
||||
manager._bloomSlider.dispatchEvent(new Event('input', { bubbles: true }));
|
||||
return manager.bloomEnabled === before && manager._bloomStage.uniforms.contrast === contrast;
|
||||
}));
|
||||
check('runtime has no uncaught browser errors', errors.length === 0);
|
||||
} finally {
|
||||
await browser.close();
|
||||
|
||||
Reference in new issue
Block a user