Skip to content

SongTrackRenderer の unit test が Windows CI で時間切れになり、たまに失敗する #3046

@Hiroshiba

Description

@Hiroshiba

不具合の内容

Windows CI の unit-test で、tests/unit/lib/songTrackRenderer/index.spec.ts正しいレンダリング結果が返される が時間切れで落ちることがあります。

失敗 run: https://github.com/VOICEVOX/voicevox/actions/runs/27528857366/job/81361882886

現象・ログ

Test timed out in 5000ms.
tests/unit/lib/songTrackRenderer/index.spec.ts:26

Snapshot `SongTrackRenderer > レンダリングイベントが正しく発行される 2` mismatched
tests/unit/lib/songTrackRenderer/index.spec.ts:90

Obsolete snapshots found when no snapshot update is expected.
SongTrackRenderer > 正しいレンダリング結果が返される 1

たぶん SongTrackRenderer のレンダリング処理が Windows CI 上で 5000ms を超え、時間切れ後も残った処理が次のテストの snapshot 確認に混ざってる気がします。
で、最初のテストの snapshot が未使用扱いになり、次のテストで本来は出ない 2 番目の snapshot mismatch が出ているのかなと。
(実際調査したらそういう挙動っぽいです)

再現手順

CI の unit-test で pnpm run test:unit が実行されると、CI の混み具合によって発生するはず。

期待動作

CI の処理時間が多少ぶれても、SongTrackRenderer の unit-test が時間切れにならない。

対応方針

tests/unit/lib/songTrackRenderer/index.spec.tsSongTrackRenderer suite 全体で、待ち時間を 5000ms から 10000ms に伸ばすのが良さそうです。

describe("SongTrackRenderer", { timeout: 10000 }, () => {

既に個別 test にある { timeout: 10000 } は削除し、待ち時間の設定を suite にまとめるのが良さそう。

Metadata

Metadata

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions