Benjamin Otte
853e8719c6
testsuite: Add clip-translate-offscreen test
...
This was an experiment where an offscreen was translated inside an
existing clip.
Because renderers try to limit offscreens to the clip rect, this is
interesting, because they might get the translation wrong.
2023-05-16 18:53:27 +02:00
Benjamin Otte
fde3d2cd50
testsuite: Add testcase for z clipping
...
the near and far clipping plane are at -10000 and 10000 respectively.
Test that the renderers respect that.
2023-05-16 18:53:27 +02:00
Matthias Clasen
fb2e67638d
testsuite: Simplify shader test
...
Simplify the shader to something GLES
will successfully compile.
2023-05-11 09:20:25 -04:00
Matthias Clasen
13ca3187f2
testsuite: fix another surface unref warning
2023-05-11 06:40:57 -04:00
Matthias Clasen
dc3003bc4d
gsk: Improve test coverage
...
Add more tests for gsk transforms, render node
and renderer apis.
2023-05-10 20:21:31 -04:00
Matthias Clasen
abbb3a2da6
testsuite: Close displays in the gsk tests
...
This gives us better coverage of the dispose
codepath for a driver that has actually been
used.
2023-05-10 20:21:12 -04:00
Matthias Clasen
5c10f2b4cd
Improve coverage for half-float fallbacks
2023-05-09 23:02:30 -04:00
Emmanuele Bassi
cdeeb3275a
build: Internal tests must set GTK_COMPILATION
...
Otherwise they won't be able to use the appropriate function visibility
on Windows.
2023-05-09 19:01:21 +01:00
Matthias Clasen
e56a539363
Add a masked variation to gsk tests
...
This improves test coverage for mask nodes.
2023-05-05 15:05:08 -04:00
Matthias Clasen
5e8e4130a5
Skip another failing gsk test with small textures
2023-05-04 15:36:57 -04:00
Matthias Clasen
f81aa14d93
Merge wayland_smalltexture and wayland_gles
...
We don't really need to have two full separate
test runs for these conditions, so combine them
into one test setup.
2023-05-04 15:13:09 -04:00
Matthias Clasen
a235b59089
Skip some tests with small textures
...
When textures are too large, we will scale them down
to fit the max texture size, which will cause comparisons
to fail.
2023-05-01 16:29:45 -04:00
Matthias Clasen
33ab588d4e
Improve test coverage
...
Check that our two rounded rect intersection functions agree.
2023-05-01 13:58:42 -04:00
Matthias Clasen
7200a93a88
gsk: Give up on one test
...
The rounded-clip-in-clip-3d test fails in GL when
flipped. Given that it was already excluded from cairo,
and also fails cairo when flipped, give up on it for now.
2023-05-01 13:45:20 -04:00
Matthias Clasen
e453a989df
Improve rounded rect intersection
...
Move the rounded rect/rect intersection code to
gskroundedrect.c, make it more precise, and add
tests for it.
Update the callers in the GL renderer.
2023-05-01 13:45:20 -04:00
Matthias Clasen
f29b24517e
Add a test for rotated blend nodes
2023-05-01 13:45:20 -04:00
Matthias Clasen
f6e47b7eb0
Add a test for rotated cross-fade nodes
...
This one checks that we don't apply the modelview
transform twice with cross-fades.
2023-05-01 13:45:13 -04:00
Matthias Clasen
21df62f428
Add another test
2023-05-01 13:43:33 -04:00
Matthias Clasen
5afd5cfec7
Add another gsk test
2023-05-01 13:43:33 -04:00
Matthias Clasen
406b1e2e03
testsuite: Fix gsk test
...
The repeated tests were not careful enough to produce
the correct reference image to match what the repeat
node does.
With these changes, all cairo tests pass.
2023-05-01 13:43:33 -04:00
Matthias Clasen
f1729affa8
testsuite: Add more gsk tests
...
Add separate suites for running the gsk compare-render
tests with the --flip, --rotate or --repeat options.
A bunch of these fail currently, and need diagnosis.
2023-05-01 13:35:35 -04:00
Matthias Clasen
3b2ba8ed99
Add more gsk tests
...
Add options to the gsk compare-render test for
modifying the node (and do a matching change to
the reference image).
flip: negative scale flipping things horizontally
rotate: 90 degree rotation
repeat: 2x2 grid
2023-05-01 13:35:35 -04:00
Matthias Clasen
386c3ac34f
Add another transform test
...
Test that transforming bounds with negative scales
works as expected.
2023-05-01 13:35:22 -04:00
Benjamin Otte
9dd050ff30
testsuite: Add parsing tests for node and texture naming
2023-03-29 03:53:52 +02:00
Benjamin Otte
1605b07ff5
rendernodeparser: Failing to parse a string is an error
...
Testcase included.
2023-03-29 03:53:52 +02:00
Benjamin Otte
cc9de42e70
testsuite: Fix broken test
...
The test was referencing a nonexisting image.
Plus, node parsing cannot reference relative URLs.
2023-03-29 03:53:52 +02:00
Matthias Clasen
24720307bb
gsk: Tweak one test to pass
...
Clip away the problematic corners in this
artificial texture scaling test. The GL renderer
has problems getting them perfect.
2023-03-22 00:15:04 -04:00
Matthias Clasen
61b9be1c1a
gsk: Add a test for scaled textures
...
GL and cairo disagree on this one, and have forever.
Whee!
2023-03-22 00:14:16 -04:00
Matthias Clasen
80730a4014
testsuite: Add some texture tests
...
In constrast to our other tests, these use
textures that are big enough to force slicing
with setting GSK_MAX_TEXTURE_SIZE, which we
will use in the following commits to improve
test coverage.
2023-03-19 10:05:52 -04:00
Matthias Clasen
ad84ee8352
tests: Add more tests for texture scale nodes
2023-03-14 01:14:57 -04:00
Benjamin Otte
987b9cec3f
testsuite: Add tests for the unknown enums
...
See commit 40e7a265a7
2023-03-05 18:35:02 +01:00
Benjamin Otte
a77beb39a1
testsuite: Add empty test for new node
2023-03-05 18:33:37 +01:00
Benjamin Otte
0581e38b09
testsuite: Add a test for stripes
...
The GL renderer was creating sripes for nodes that were scaled in
particular ways, probably due to rounding errors.
This testsuite focuses on one of those stripes to make sure they are
gone.
2023-03-04 02:50:38 +01:00
Benjamin Otte
8bbf220fdf
testsuite: Add a test for large scale nodes
...
This test fails if we naively create fullscale
intermediate offscreens. This was fixed in the
previous commits.
This tests the fixes in 22ba6b1f33
(for
cairo) and 3a0152b65f
(for GL).
2023-03-03 11:33:57 -06:00
Matthias Clasen
aec4bfcf3b
gsk: Add a node parser test for mask modes
2023-02-14 21:47:54 -05:00
Matthias Clasen
7e18c2849b
gsk: Add a render test for mask modes
2023-02-14 21:47:54 -05:00
Matthias Clasen
cb0aaf0b2c
Add more mask node tests
2023-02-14 19:07:01 -05:00
Matthias Clasen
c8bfea7aa1
Add a test for mask nodes
2023-02-12 08:35:25 -05:00
Matthias Clasen
238e7ec351
Add a test for scaled textures
2023-02-11 15:09:38 -05:00
Matthias Clasen
3121f88265
build: Drop the install-tests option
...
We no longer use installed tests in CI,
so lets reap the benefit and simplify
our build setup for tests.
2022-12-19 23:12:47 -05:00
Emmanuele Bassi
ce9069c85f
build: Add known to be failing gsk comparison tests
...
The unaligned-offscreen and upside-down-label-3d tests are failing after
upgrading our CI images, seemingly because of some font rendering issue
that is hard to track. Let's use the "failing" testsuite mechanism that
we also use for the reftests.
2022-12-14 17:40:04 +00:00
Matthias Clasen
b441c684ab
gsk: Avoid a crash with negative scales
...
Don't crash when both scale_x and scale_y are -1.
A test is included.
2022-11-20 12:13:02 -05:00
Matthias Clasen
5064a8eac0
gsk: Improve test coverage
2022-07-15 16:41:05 -04:00
Benjamin Otte
0410125f20
nodeparser: Fix parsing of color-matrix node
...
Negative offsets in the color matrix were inverted because it used the
rect parser.
2022-05-18 21:16:33 +02:00
Sebastian Keller
1c733857b3
testsuite: Add unaligned-offscreen test
...
Tests whether text rendered to an offscreen node unaligned with the
pixel grid introduces blurriness.
2022-04-04 23:48:58 +02:00
Benjamin Otte
b28c3ef3d9
renderers: Handle large viewports
...
When large viewports are passed to gsk_renderer_render_texture(), don't
fail (or even return NULL).
Instead, draw multiple tiles and assemble them into a memory texture.
Tests added to the testsuite for this.
2022-02-26 20:35:44 +01:00
Timm Bäder
fd6b3ef5a0
gl: Linear gradients don't support 3d transforms
...
Add another helper similar to the one for transforms, but that only
works on 2d transforms.
Fixes #4501
2021-12-12 12:57:44 +01:00
Matthias Clasen
144f727d5a
Rename ngl to gl
...
We have only one gl renderer now, and it is
a bit odd for it not be called gl.
2021-10-07 13:05:53 -04:00
Matthias Clasen
41b810da7f
Add gsk_transform_to_2d_components
...
This function decomposes a general 2D transform
into skew, scale, rotation and translation.
Tests included.
2021-09-18 02:06:51 -04:00
Matthias Clasen
5742483422
Add more transform tests
...
Test gsk_transform_to_2d.
2021-09-17 22:37:08 -04:00