修复了一些bug
This commit is contained in:
@@ -971,6 +971,32 @@ TEST(RenderiveWebGallery, LowLatencyStrategyKeepsForegroundResponsiveUnderAggres
|
||||
observer.at("limit_state") == "render_limited");
|
||||
}
|
||||
|
||||
TEST(RenderiveWebGallery, WebPixelStreamCapsAutomaticLowLatencyScheduler) {
|
||||
Gallery_Plot_Session session(true);
|
||||
ASSERT_EQ(response_json(session.handle(gallery_request(
|
||||
Gallery_Request_Kind::Open, open_message("spectrum", "low_latency")))).at("type"),
|
||||
"case_state");
|
||||
const auto patched = response_json(session.handle(gallery_request(
|
||||
Gallery_Request_Kind::Patch,
|
||||
R"({"category":"event","type":"gallery_patch","patch":{"max_render_fps":1000000000,"pixel_stream_fps":20}})")));
|
||||
ASSERT_EQ(patched.at("type"), "case_state");
|
||||
const auto& limit = patched.at("telemetry").at("low_latency_limit");
|
||||
EXPECT_EQ(patched.at("telemetry").at("kernel_observer").at("configured_frequency_hz"),
|
||||
1'000'000'000.0);
|
||||
EXPECT_EQ(patched.at("telemetry").at("kernel_observer").at("target_interval_ns"), 1);
|
||||
EXPECT_EQ(limit.at("current"), "web_pixel_stream");
|
||||
EXPECT_TRUE(limit.at("web_pixel_stream_limited").get<bool>());
|
||||
EXPECT_EQ(limit.at("web_pixel_stream_interval_ns"), 50'000'000);
|
||||
EXPECT_EQ(limit.at("scheduler_interval_ns"), 50'000'000);
|
||||
EXPECT_DOUBLE_EQ(limit.at("scheduler_frequency_hz"), 20.0);
|
||||
const auto baseline = successful_render_count(session);
|
||||
ASSERT_TRUE(wait_for_condition([&session, baseline] {
|
||||
return successful_render_count(session) > baseline;
|
||||
}));
|
||||
std::this_thread::sleep_for(std::chrono::milliseconds(250));
|
||||
EXPECT_LE(successful_render_count(session) - baseline, 9U);
|
||||
}
|
||||
|
||||
TEST(RenderiveWebGallery, PlaybackStrategyQueuesWithoutAutomaticConsumptionAndReportsEmptyQueue) {
|
||||
Gallery_Plot_Session session(true);
|
||||
const auto opened = response_json(session.handle(gallery_request(
|
||||
|
||||
Reference in New Issue
Block a user