mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-13 04:48:53 +00:00
### TL;DR Improved the test stability for the turbo renderer by using reactive state observation instead of arbitrary timeouts. (https://github.com/toeverything/AFFiNE/actions/runs/14729729312/job/41340918866?pr=12071) ### What changed? - Replaced `wait(FRAME)` and other timeout-based waits with reactive state observation using RxJS - Added `filter` import from `rxjs/operators` - Updated test assertions to properly wait for specific renderer states (`ready`, `pending`, `zooming`) - Made tests more deterministic by waiting for specific state transitions rather than arbitrary time periods <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Tests** - Improved test reliability by replacing fixed-duration waits with reactive waits based on renderer state changes, ensuring tests are synchronized with actual state transitions. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
@blocksuite/integration-test
Integration test for BlockSuite.
Running Tests
You can run all integration tests using:
cd blocksuite/integration-test
yarn test:unit
To run a specific test or test file, use the -t flag with a test name pattern:
# Run a specific test
yarn test:unit -t "should access turbo renderer instance"
# Run all tests in a specific file
yarn test:unit src/__tests__/edgeless/viewport-renderer.spec.ts
For debugging tests with the Playwright debugger:
yarn test:debug
yarn test:debug -t "should access turbo renderer instance"