test capi: ++CompositeMethod coverage

This commit is contained in:
Hermet Park 2023-05-09 17:23:06 +09:00 committed by Hermet Park
parent 89dc7616cf
commit a992e571a3

View file

@ -252,3 +252,84 @@ TEST_CASE("Paint Clip Path Composite Method", "[capiPaint]")
REQUIRE(tvg_paint_del(paint) == TVG_RESULT_SUCCESS); REQUIRE(tvg_paint_del(paint) == TVG_RESULT_SUCCESS);
} }
TEST_CASE("Paint AlphaMask Composite Method", "[capiPaint]")
{
Tvg_Paint* paint = tvg_shape_new();
REQUIRE(paint);
Tvg_Paint* target = tvg_shape_new();
REQUIRE(target);
REQUIRE(tvg_paint_set_composite_method(paint, NULL, TVG_COMPOSITE_METHOD_NONE) == TVG_RESULT_SUCCESS);
REQUIRE(tvg_paint_set_composite_method(paint, target, TVG_COMPOSITE_METHOD_NONE) == TVG_RESULT_INVALID_ARGUMENT);
REQUIRE(tvg_paint_set_composite_method(paint, NULL, TVG_COMPOSITE_METHOD_ALPHA_MASK) == TVG_RESULT_INVALID_ARGUMENT);
Tvg_Paint* target2 = tvg_shape_new();
REQUIRE(target2);
REQUIRE(tvg_paint_set_composite_method(paint, target2, TVG_COMPOSITE_METHOD_ALPHA_MASK) == TVG_RESULT_SUCCESS);
const Tvg_Paint* target3 = nullptr;
Tvg_Composite_Method method = TVG_COMPOSITE_METHOD_NONE;
REQUIRE(tvg_paint_get_composite_method(paint, NULL, &method) == TVG_RESULT_INVALID_ARGUMENT);
REQUIRE(tvg_paint_get_composite_method(paint, &target3, NULL) == TVG_RESULT_INVALID_ARGUMENT);
REQUIRE(tvg_paint_get_composite_method(paint, &target3, &method) == TVG_RESULT_SUCCESS);
REQUIRE(method == TVG_COMPOSITE_METHOD_ALPHA_MASK);
REQUIRE(target2 == target3);
REQUIRE(tvg_paint_del(paint) == TVG_RESULT_SUCCESS);
}
TEST_CASE("Paint InvAlphaMask Composite Method", "[capiPaint]")
{
Tvg_Paint* paint = tvg_shape_new();
REQUIRE(paint);
Tvg_Paint* target = tvg_shape_new();
REQUIRE(target);
REQUIRE(tvg_paint_set_composite_method(paint, NULL, TVG_COMPOSITE_METHOD_NONE) == TVG_RESULT_SUCCESS);
REQUIRE(tvg_paint_set_composite_method(paint, target, TVG_COMPOSITE_METHOD_NONE) == TVG_RESULT_INVALID_ARGUMENT);
REQUIRE(tvg_paint_set_composite_method(paint, NULL, TVG_COMPOSITE_METHOD_INVERSE_ALPHA_MASK) == TVG_RESULT_INVALID_ARGUMENT);
Tvg_Paint* target2 = tvg_shape_new();
REQUIRE(target2);
REQUIRE(tvg_paint_set_composite_method(paint, target2, TVG_COMPOSITE_METHOD_INVERSE_ALPHA_MASK) == TVG_RESULT_SUCCESS);
const Tvg_Paint* target3 = nullptr;
Tvg_Composite_Method method = TVG_COMPOSITE_METHOD_NONE;
REQUIRE(tvg_paint_get_composite_method(paint, NULL, &method) == TVG_RESULT_INVALID_ARGUMENT);
REQUIRE(tvg_paint_get_composite_method(paint, &target3, NULL) == TVG_RESULT_INVALID_ARGUMENT);
REQUIRE(tvg_paint_get_composite_method(paint, &target3, &method) == TVG_RESULT_SUCCESS);
REQUIRE(method == TVG_COMPOSITE_METHOD_INVERSE_ALPHA_MASK);
REQUIRE(target2 == target3);
REQUIRE(tvg_paint_del(paint) == TVG_RESULT_SUCCESS);
}
TEST_CASE("Paint LumaMask Composite Method", "[capiPaint]")
{
Tvg_Paint* paint = tvg_shape_new();
REQUIRE(paint);
Tvg_Paint* target = tvg_shape_new();
REQUIRE(target);
REQUIRE(tvg_paint_set_composite_method(paint, NULL, TVG_COMPOSITE_METHOD_NONE) == TVG_RESULT_SUCCESS);
REQUIRE(tvg_paint_set_composite_method(paint, target, TVG_COMPOSITE_METHOD_NONE) == TVG_RESULT_INVALID_ARGUMENT);
REQUIRE(tvg_paint_set_composite_method(paint, NULL, TVG_COMPOSITE_METHOD_LUMA_MASK) == TVG_RESULT_INVALID_ARGUMENT);
Tvg_Paint* target2 = tvg_shape_new();
REQUIRE(target2);
REQUIRE(tvg_paint_set_composite_method(paint, target2, TVG_COMPOSITE_METHOD_LUMA_MASK) == TVG_RESULT_SUCCESS);
const Tvg_Paint* target3 = nullptr;
Tvg_Composite_Method method = TVG_COMPOSITE_METHOD_NONE;
REQUIRE(tvg_paint_get_composite_method(paint, NULL, &method) == TVG_RESULT_INVALID_ARGUMENT);
REQUIRE(tvg_paint_get_composite_method(paint, &target3, NULL) == TVG_RESULT_INVALID_ARGUMENT);
REQUIRE(tvg_paint_get_composite_method(paint, &target3, &method) == TVG_RESULT_SUCCESS);
REQUIRE(method == TVG_COMPOSITE_METHOD_LUMA_MASK);
REQUIRE(target2 == target3);
REQUIRE(tvg_paint_del(paint) == TVG_RESULT_SUCCESS);
}