Cover stroke commit face input binding helper
This commit is contained in:
@@ -1885,6 +1885,43 @@ void retained_stroke_commit_input_binder_uses_sequence_slots(pp::tests::Harness&
|
||||
PP_EXPECT(h, bound_samplers[4].second == 4);
|
||||
}
|
||||
|
||||
void retained_stroke_commit_face_input_binder_forwards_sequence_slots(pp::tests::Harness& h)
|
||||
{
|
||||
const auto sequence = plan_canvas_stroke_commit_sequence(
|
||||
CanvasStrokeCommitRequest {
|
||||
.erase_mode = false,
|
||||
.alpha_locked = false,
|
||||
.selection_mask_active = true,
|
||||
.dual_stroke_enabled = true,
|
||||
.pattern_enabled = true,
|
||||
});
|
||||
|
||||
std::vector<int> active_slots;
|
||||
std::vector<CanvasStrokeCommitTextureRole> bound_textures;
|
||||
std::vector<std::pair<CanvasStrokeCommitTextureRole, int>> bound_samplers;
|
||||
|
||||
pp::panopainter::bind_legacy_canvas_stroke_commit_face_inputs(
|
||||
sequence,
|
||||
[&](int texture_slot) {
|
||||
active_slots.push_back(texture_slot);
|
||||
},
|
||||
[&](CanvasStrokeCommitTextureRole role) {
|
||||
bound_textures.push_back(role);
|
||||
},
|
||||
[&](CanvasStrokeCommitTextureRole role, int texture_slot) {
|
||||
bound_samplers.emplace_back(role, texture_slot);
|
||||
});
|
||||
|
||||
PP_EXPECT(h, active_slots.size() == 5U);
|
||||
PP_EXPECT(h, bound_textures.size() == 5U);
|
||||
PP_EXPECT(h, bound_samplers.size() == 5U);
|
||||
PP_EXPECT(h, active_slots[0] == 0);
|
||||
PP_EXPECT(h, active_slots[4] == 4);
|
||||
PP_EXPECT(h, bound_textures[2] == CanvasStrokeCommitTextureRole::selection_mask);
|
||||
PP_EXPECT(h, bound_samplers[3].first == CanvasStrokeCommitTextureRole::dual_stroke);
|
||||
PP_EXPECT(h, bound_samplers[3].second == 3);
|
||||
}
|
||||
|
||||
void retained_stroke_commit_dilate_copy_uses_layer_scratch_slot(pp::tests::Harness& h)
|
||||
{
|
||||
const auto sequence = plan_canvas_stroke_commit_sequence(
|
||||
|
||||
Reference in New Issue
Block a user