Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 

15 wiersze
978 B

  1. import assert from 'node:assert/strict';
  2. import { expect } from '@playwright/test';
  3. export async function verifyVisualEffects(page, operation) {
  4. await expect.poll(async()=>page.evaluate(()=>globalThis.__trainingSceneDiagnostics().bridgeWorkshop.pending)).toBe(false);
  5. const targets = await page.evaluate(()=>globalThis.__trainingSceneDiagnostics().bridgeWorkshop.targets);
  6. for (const effect of operation.effects || []) {
  7. const target = targets.find(item=>item.id===effect.targetId);
  8. assert.ok(target, `Missing visual target ${effect.targetId}`);
  9. if (typeof effect.visible==='boolean') assert.equal(target.visible,effect.visible,`${effect.targetId} visibility`);
  10. if (effect.offset) assert.ok(target.position.every((v,i)=>Math.abs(v-target.home[i]-effect.offset[i])<0.001),`${effect.targetId} displacement`);
  11. if (effect.scale) assert.ok(target.scale.every((v,i)=>Math.abs(v-target.homeScale[i]*effect.scale[i])<0.001),`${effect.targetId} scale`);
  12. }
  13. }