fix: close STEP-085 V4 renderer efficiency
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled

This commit is contained in:
tei
2026-09-19 22:16:36 +09:00
parent bc6b8dd84b
commit 70f112ea27
19 changed files with 501 additions and 111 deletions

View File

@@ -884,6 +884,29 @@ TEST(Source, RasterArrayTimelineCadenceUsesOneSharedDeterministicDeadline) {
EXPECT_TRUE(timeline.cadenceDue(start));
}
TEST(Source, RasterArrayV4RendererCadenceGatesVisualSimulationWithoutForecastPlayback) {
style::RasterArrayRendererCadence cadence;
const auto start = std::chrono::steady_clock::time_point{} + std::chrono::seconds(1);
cadence.setTargetFps(style::RasterArrayTargetFps::Fps30);
EXPECT_TRUE(cadence.cadenceDue(start));
EXPECT_TRUE(cadence.consumeIfDue(start));
EXPECT_FALSE(cadence.consumeIfDue(start));
EXPECT_FALSE(cadence.cadenceDue(start + std::chrono::milliseconds(33)));
EXPECT_TRUE(cadence.cadenceDue(start + std::chrono::milliseconds(34)));
EXPECT_TRUE(cadence.consumeIfDue(start + std::chrono::milliseconds(34)));
const auto revisionAt30 = cadence.revision();
cadence.setTargetFps(style::RasterArrayTargetFps::Fps60);
EXPECT_TRUE(cadence.consumeIfDue(start + std::chrono::milliseconds(34)));
EXPECT_FALSE(cadence.consumeIfDue(start + std::chrono::milliseconds(50)));
EXPECT_TRUE(cadence.consumeIfDue(start + std::chrono::milliseconds(51)));
EXPECT_GT(cadence.revision(), revisionAt30);
cadence.setTargetFps(style::RasterArrayTargetFps::Auto);
EXPECT_TRUE(cadence.consumeIfDue(start + std::chrono::milliseconds(51)));
EXPECT_TRUE(cadence.consumeIfDue(start + std::chrono::milliseconds(51)));
}
TEST(Source, RasterArrayRuntimeFieldWindowAdvancesWithoutReplacingTheSource) {
SourceTest test;
const auto eastMetadata = fixtureBytes("uniform-east", "metadata.json");