mirror of
https://github.com/thorvg/thorvg.git
synced 2025-06-14 20:14:37 +00:00
tests: added Capis gradient transformation tests
This commit is contained in:
parent
d25a285b4c
commit
1006cbd0d8
2 changed files with 82 additions and 0 deletions
|
@ -182,6 +182,47 @@ TEST_CASE("Linear Gradient spread", "[capiLinearGradient]")
|
|||
REQUIRE(tvg_gradient_del(NULL) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
}
|
||||
|
||||
TEST_CASE("Linear Gradient transformation", "[capiLinearGradient]")
|
||||
{
|
||||
Tvg_Gradient *gradient = tvg_linear_gradient_new();
|
||||
REQUIRE(gradient);
|
||||
|
||||
Tvg_Matrix matrix_get;
|
||||
|
||||
REQUIRE(tvg_gradient_get_transform(NULL, &matrix_get) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
REQUIRE(tvg_gradient_get_transform(gradient, NULL) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
REQUIRE(tvg_gradient_get_transform(gradient, &matrix_get) == TVG_RESULT_SUCCESS);
|
||||
|
||||
REQUIRE(matrix_get.e11 == Approx(1.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e12 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e13 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e21 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e22 == Approx(1.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e23 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e31 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e32 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e33 == Approx(1.0f).margin(0.000001));
|
||||
|
||||
Tvg_Matrix matrix_set = {1.1f, -2.2f, 3.3f, -4.4f, 5.5f, -6.6f, 7.7f, -8.8f, 9.9f};
|
||||
REQUIRE(tvg_gradient_set_transform(NULL, &matrix_set) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
REQUIRE(tvg_gradient_set_transform(gradient, NULL) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
REQUIRE(tvg_gradient_set_transform(gradient, &matrix_set) == TVG_RESULT_SUCCESS);
|
||||
|
||||
REQUIRE(tvg_gradient_get_transform(gradient, &matrix_get) == TVG_RESULT_SUCCESS);
|
||||
|
||||
REQUIRE(matrix_get.e11 == Approx(matrix_set.e11).margin(0.000001));
|
||||
REQUIRE(matrix_get.e12 == Approx(matrix_set.e12).margin(0.000001));
|
||||
REQUIRE(matrix_get.e13 == Approx(matrix_set.e13).margin(0.000001));
|
||||
REQUIRE(matrix_get.e21 == Approx(matrix_set.e21).margin(0.000001));
|
||||
REQUIRE(matrix_get.e22 == Approx(matrix_set.e22).margin(0.000001));
|
||||
REQUIRE(matrix_get.e23 == Approx(matrix_set.e23).margin(0.000001));
|
||||
REQUIRE(matrix_get.e31 == Approx(matrix_set.e31).margin(0.000001));
|
||||
REQUIRE(matrix_get.e32 == Approx(matrix_set.e32).margin(0.000001));
|
||||
REQUIRE(matrix_get.e33 == Approx(matrix_set.e33).margin(0.000001));
|
||||
|
||||
REQUIRE(tvg_gradient_del(gradient) == TVG_RESULT_SUCCESS);
|
||||
}
|
||||
|
||||
TEST_CASE("Stroke Linear Gradient", "[capiLinearGradient]")
|
||||
{
|
||||
Tvg_Paint *shape = tvg_shape_new();
|
||||
|
|
|
@ -138,6 +138,47 @@ TEST_CASE("Set/Get gradient spread", "[capiRadialGradient]")
|
|||
REQUIRE(tvg_gradient_del(NULL) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
}
|
||||
|
||||
TEST_CASE("Radial Gradient transformation", "[capiRadialGradient]")
|
||||
{
|
||||
Tvg_Gradient *gradient = tvg_radial_gradient_new();
|
||||
REQUIRE(gradient);
|
||||
|
||||
Tvg_Matrix matrix_get;
|
||||
|
||||
REQUIRE(tvg_gradient_get_transform(NULL, &matrix_get) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
REQUIRE(tvg_gradient_get_transform(gradient, NULL) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
REQUIRE(tvg_gradient_get_transform(gradient, &matrix_get) == TVG_RESULT_SUCCESS);
|
||||
|
||||
REQUIRE(matrix_get.e11 == Approx(1.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e12 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e13 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e21 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e22 == Approx(1.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e23 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e31 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e32 == Approx(0.0f).margin(0.000001));
|
||||
REQUIRE(matrix_get.e33 == Approx(1.0f).margin(0.000001));
|
||||
|
||||
Tvg_Matrix matrix_set = {1.1f, -2.2f, 3.3f, -4.4f, 5.5f, -6.6f, 7.7f, -8.8f, 9.9f};
|
||||
REQUIRE(tvg_gradient_set_transform(NULL, &matrix_set) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
REQUIRE(tvg_gradient_set_transform(gradient, NULL) == TVG_RESULT_INVALID_ARGUMENT);
|
||||
REQUIRE(tvg_gradient_set_transform(gradient, &matrix_set) == TVG_RESULT_SUCCESS);
|
||||
|
||||
REQUIRE(tvg_gradient_get_transform(gradient, &matrix_get) == TVG_RESULT_SUCCESS);
|
||||
|
||||
REQUIRE(matrix_get.e11 == Approx(matrix_set.e11).margin(0.000001));
|
||||
REQUIRE(matrix_get.e12 == Approx(matrix_set.e12).margin(0.000001));
|
||||
REQUIRE(matrix_get.e13 == Approx(matrix_set.e13).margin(0.000001));
|
||||
REQUIRE(matrix_get.e21 == Approx(matrix_set.e21).margin(0.000001));
|
||||
REQUIRE(matrix_get.e22 == Approx(matrix_set.e22).margin(0.000001));
|
||||
REQUIRE(matrix_get.e23 == Approx(matrix_set.e23).margin(0.000001));
|
||||
REQUIRE(matrix_get.e31 == Approx(matrix_set.e31).margin(0.000001));
|
||||
REQUIRE(matrix_get.e32 == Approx(matrix_set.e32).margin(0.000001));
|
||||
REQUIRE(matrix_get.e33 == Approx(matrix_set.e33).margin(0.000001));
|
||||
|
||||
REQUIRE(tvg_gradient_del(gradient) == TVG_RESULT_SUCCESS);
|
||||
}
|
||||
|
||||
TEST_CASE("Stroke Radial Gradient", "[capiRadialGradient]")
|
||||
{
|
||||
Tvg_Paint *shape = tvg_shape_new();
|
||||
|
|
Loading…
Add table
Reference in a new issue