Plan renderer diagnostics in app status
This commit is contained in:
@@ -905,16 +905,20 @@ if(TARGET pano_cli)
|
||||
--history-bytes 1572864
|
||||
--recording-running
|
||||
--encoder-available
|
||||
--encoded-frames 12)
|
||||
--encoded-frames 12
|
||||
--framebuffer-fetch
|
||||
--float32
|
||||
--float32-linear
|
||||
--float16)
|
||||
set_tests_properties(pano_cli_plan_app_status_smoke PROPERTIES
|
||||
LABELS "app;integration;desktop-fast"
|
||||
PASS_REGULAR_EXPRESSION "\"command\":\"plan-app-status\".*\"title\":\"Panodoc: demo\\* \\(8K\\)\".*\"dpi\":\"1.3x-dpi\".*\"memory\":\"History memory: 1.50 Mb\".*\"recording\":\\{\"visible\":true,\"text\":\"Recorded 12 frames\"\\}.*\"fromIndexValid\":true.*\"fromIndex\":2048.*\"toIndexValid\":true.*\"toIndex\":3.*\"labelValid\":true.*\"label\":\"8K\"")
|
||||
PASS_REGULAR_EXPRESSION "\"command\":\"plan-app-status\".*\"title\":\"Panodoc: demo\\* \\(8K\\)\".*\"dpi\":\"1.3x-dpi\".*\"memory\":\"History memory: 1.50 Mb\".*\"recording\":\\{\"visible\":true,\"text\":\"Recorded 12 frames\"\\}.*\"rendererDiagnostics\":\\{\"framebufferFetch\":\\{\"supported\":true,\"label\":\"FBF\"\\},\"floatingPointTargets\":\\{\"supported\":true,\"label\":\"F32L\"\\}\\}.*\"fromIndexValid\":true.*\"fromIndex\":2048.*\"toIndexValid\":true.*\"toIndex\":3.*\"labelValid\":true.*\"label\":\"8K\"")
|
||||
|
||||
add_test(NAME pano_cli_plan_app_status_unknown_resolution_smoke
|
||||
COMMAND pano_cli plan-app-status --doc-name demo --resolution 1234 --resolution-index 9 --recording-running)
|
||||
set_tests_properties(pano_cli_plan_app_status_unknown_resolution_smoke PROPERTIES
|
||||
LABELS "app;integration;desktop-fast;fuzz"
|
||||
PASS_REGULAR_EXPRESSION "\"command\":\"plan-app-status\".*\"title\":\"Panodoc: demo \\(unknown\\)\".*\"recording\":\\{\"visible\":false,\"text\":\"\"\\}.*\"fromIndexValid\":false.*\"toIndexValid\":false.*\"labelValid\":false.*\"label\":\"\"")
|
||||
PASS_REGULAR_EXPRESSION "\"command\":\"plan-app-status\".*\"title\":\"Panodoc: demo \\(unknown\\)\".*\"recording\":\\{\"visible\":false,\"text\":\"\"\\}.*\"rendererDiagnostics\":\\{\"framebufferFetch\":\\{\"supported\":false,\"label\":\"FBF\"\\},\"floatingPointTargets\":\\{\"supported\":false,\"label\":\"\"\\}\\}.*\"fromIndexValid\":false.*\"toIndexValid\":false.*\"labelValid\":false.*\"label\":\"\"")
|
||||
|
||||
add_test(NAME pano_cli_plan_document_resize_smoke
|
||||
COMMAND pano_cli plan-document-resize --current-resolution 2048 --selected-resolution-index 4)
|
||||
|
||||
@@ -71,6 +71,47 @@ void recording_label_only_shows_when_recording_with_encoder(pp::tests::Harness&
|
||||
PP_EXPECT(harness, active.text == "Recorded 12 frames");
|
||||
}
|
||||
|
||||
void renderer_diagnostics_report_framebuffer_fetch(pp::tests::Harness& harness)
|
||||
{
|
||||
const auto unsupported = pp::app::plan_renderer_diagnostics({});
|
||||
PP_EXPECT(harness, !unsupported.framebuffer_fetch.supported);
|
||||
PP_EXPECT(harness, unsupported.framebuffer_fetch.label == "FBF");
|
||||
|
||||
const auto supported = pp::app::plan_renderer_diagnostics({
|
||||
.framebuffer_fetch = true,
|
||||
});
|
||||
PP_EXPECT(harness, supported.framebuffer_fetch.supported);
|
||||
PP_EXPECT(harness, supported.framebuffer_fetch.label == "FBF");
|
||||
}
|
||||
|
||||
void renderer_diagnostics_prefer_highest_float_capability_label(pp::tests::Harness& harness)
|
||||
{
|
||||
const auto none = pp::app::plan_renderer_diagnostics({});
|
||||
PP_EXPECT(harness, !none.floating_point_targets.supported);
|
||||
PP_EXPECT(harness, none.floating_point_targets.label.empty());
|
||||
|
||||
const auto float16 = pp::app::plan_renderer_diagnostics({
|
||||
.float16_render_targets = true,
|
||||
});
|
||||
PP_EXPECT(harness, float16.floating_point_targets.supported);
|
||||
PP_EXPECT(harness, float16.floating_point_targets.label == "F16");
|
||||
|
||||
const auto float32 = pp::app::plan_renderer_diagnostics({
|
||||
.float32_render_targets = true,
|
||||
.float16_render_targets = true,
|
||||
});
|
||||
PP_EXPECT(harness, float32.floating_point_targets.supported);
|
||||
PP_EXPECT(harness, float32.floating_point_targets.label == "F32");
|
||||
|
||||
const auto float32_linear = pp::app::plan_renderer_diagnostics({
|
||||
.float32_render_targets = true,
|
||||
.float32_linear_filtering = true,
|
||||
.float16_render_targets = true,
|
||||
});
|
||||
PP_EXPECT(harness, float32_linear.floating_point_targets.supported);
|
||||
PP_EXPECT(harness, float32_linear.floating_point_targets.label == "F32L");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
int main()
|
||||
@@ -82,5 +123,7 @@ int main()
|
||||
harness.run("document title survives unknown resolution", document_title_survives_unknown_resolution);
|
||||
harness.run("status labels match legacy text", status_labels_match_legacy_text);
|
||||
harness.run("recording label only shows when recording with encoder", recording_label_only_shows_when_recording_with_encoder);
|
||||
harness.run("renderer diagnostics report framebuffer fetch", renderer_diagnostics_report_framebuffer_fetch);
|
||||
harness.run("renderer diagnostics prefer highest float capability label", renderer_diagnostics_prefer_highest_float_capability_label);
|
||||
return harness.finish();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user