Extract export menu action planning
This commit is contained in:
@@ -78,6 +78,51 @@ void export_start_reports_missing_canvas_after_license_gate(pp::tests::Harness&
|
||||
== pp::app::DocumentExportStartDecision::show_license_disabled);
|
||||
}
|
||||
|
||||
void export_menu_routes_image_dialogs_without_license(pp::tests::Harness& harness)
|
||||
{
|
||||
const auto jpeg = pp::app::plan_document_export_menu_action(
|
||||
pp::app::DocumentExportMenuKind::jpeg,
|
||||
true,
|
||||
false);
|
||||
const auto png = pp::app::plan_document_export_menu_action(
|
||||
pp::app::DocumentExportMenuKind::png,
|
||||
true,
|
||||
false);
|
||||
|
||||
PP_EXPECT(harness, jpeg.action == pp::app::DocumentExportMenuAction::show_jpeg_dialog);
|
||||
PP_EXPECT(harness, jpeg.opens_dialog);
|
||||
PP_EXPECT(harness, png.action == pp::app::DocumentExportMenuAction::show_png_dialog);
|
||||
PP_EXPECT(harness, png.opens_dialog);
|
||||
}
|
||||
|
||||
void export_menu_blocks_video_when_license_is_missing(pp::tests::Harness& harness)
|
||||
{
|
||||
const auto mp4 = pp::app::plan_document_export_menu_action(
|
||||
pp::app::DocumentExportMenuKind::animation_mp4,
|
||||
true,
|
||||
false);
|
||||
const auto timelapse = pp::app::plan_document_export_menu_action(
|
||||
pp::app::DocumentExportMenuKind::timelapse,
|
||||
true,
|
||||
false);
|
||||
|
||||
PP_EXPECT(harness, mp4.action == pp::app::DocumentExportMenuAction::show_license_disabled);
|
||||
PP_EXPECT(harness, !mp4.opens_dialog);
|
||||
PP_EXPECT(harness, timelapse.action == pp::app::DocumentExportMenuAction::show_license_disabled);
|
||||
PP_EXPECT(harness, !timelapse.opens_dialog);
|
||||
}
|
||||
|
||||
void export_menu_reports_missing_canvas_for_unlicensed_image_exports(pp::tests::Harness& harness)
|
||||
{
|
||||
const auto plan = pp::app::plan_document_export_menu_action(
|
||||
pp::app::DocumentExportMenuKind::layers,
|
||||
false,
|
||||
true);
|
||||
|
||||
PP_EXPECT(harness, plan.action == pp::app::DocumentExportMenuAction::unavailable_no_canvas);
|
||||
PP_EXPECT(harness, !plan.opens_dialog);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
int main()
|
||||
@@ -91,5 +136,8 @@ int main()
|
||||
harness.run("export start allows valid canvas state", export_start_allows_valid_canvas_state);
|
||||
harness.run("export start blocks demo only when license required", export_start_blocks_demo_only_when_license_required);
|
||||
harness.run("export start reports missing canvas after license gate", export_start_reports_missing_canvas_after_license_gate);
|
||||
harness.run("export menu routes image dialogs without license", export_menu_routes_image_dialogs_without_license);
|
||||
harness.run("export menu blocks video when license is missing", export_menu_blocks_video_when_license_is_missing);
|
||||
harness.run("export menu reports missing canvas for unlicensed image exports", export_menu_reports_missing_canvas_for_unlicensed_image_exports);
|
||||
return harness.finish();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user