Matthias Clasen
56cfef3544
testsuite: Use gtk_list_item_manager_gc_tiles
...
Use this new api instead of open-coding it.
Also, assert that it merges consecutive
multi-item tiles.
2023-05-20 19:50:11 -04:00
Matthias Clasen
1d4f383ba5
Drop the FILLER tile type
...
It is not used anymore.
2023-05-20 12:28:19 -04:00
Matthias Clasen
43a22bb350
Cosmetics
...
Use the proper g_assert variant.
2023-05-20 07:39:21 -04:00
Matthias Clasen
70ba00ae53
testsuite: Make this test compile
...
clang did not like this creative use of
strings at all. Rightfully so.
2023-05-18 08:40:50 -04:00
Matthias Clasen
188677724c
Improve test coverage for property lookup models
2023-05-16 20:13:57 -04:00
Matthias Clasen
9d3046f187
Merge branch 'matthiasc/for-main' into 'main'
...
Matthiasc/for main
See merge request GNOME/gtk!5975
2023-05-16 20:42:27 +00:00
Benjamin Otte
2b0e3a5b1a
nodeparser: Move an error check
...
By putting the check earlier, it will be emitted for the right token.
2023-05-16 18:53:53 +02:00
Benjamin Otte
f5955feea1
testsuite: Add crossfade-clip-both-children test
...
This one tests a crossfade between two non-overlapping nodes with a clip
region that covers neither of the two nodes.
This tests that renderers can deal with clip regions that doesn't
overlap nodes in a situation where they will most likely want to create
an offscreen.
As offscreens are typically clipped to the clip region, this would cause
an empty offscreen and that can cause failures.
2023-05-16 18:53:27 +02:00
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
ee6ef41e71
css: Remove crashy resource:// optimization
...
Using gdk_texture_new_from_resource() is not valid here because we are
not sure if the given resource is valid.
Plus, the previous optimization is no longer relevant, because we are
not using gdk_pixbuf_new_from_resource() anymore - which was what this
optimization was about before it was ported to GdkTexture.
Test attached.
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
3e27232028
Improve test coverage for sorters
2023-05-16 12:33:12 -04:00
Matthias Clasen
c2676ad785
Improve test coverage for GtkPropertyLookupListModel
2023-05-16 12:33:12 -04:00
Matthias Clasen
05a0aca5ab
Improve test coverage for GtkStringSorter
2023-05-15 23:21:06 -04:00
Matthias Clasen
013401b594
Fix texture tests with GLES
...
No sync for you if you're using GLES.
2023-05-15 19:11:35 -04:00
Matthias Clasen
0152286fa0
Improve test coverage for GdkGLContext
2023-05-15 16:49:12 -04:00
Matthias Clasen
41b606b16d
Add tests for GdkTextureDownloader
2023-05-15 15:24:56 -04:00
Matthias Clasen
f83c00c928
Test gltexture update functionality
2023-05-15 12:50:28 -04:00
Matthias Clasen
f497cb2b6e
Improve gdk test coverage
2023-05-15 11:56:31 -04:00
Matthias Clasen
e50209a535
Add more texture load tests
...
Add some tests for handling of failures.
The test data here is taking from gdk-pixbufs
tests/test-images/fail directory, excluding anything
but png, tiff and jpg images.
2023-05-14 07:50:11 -04:00
Matthias Clasen
d6430995ad
Improve gdk test coverage
...
Test the loadable icon implementation of GdkTexture.
2023-05-14 07:50:11 -04:00
Matthias Clasen
cea15fc63e
Improve gdk test coverage
...
Add tests for GdkToplevvelLayout and
GdkPopupLayout.
2023-05-13 21:56:29 -04:00
Matthias Clasen
f2a297f56d
Stop using gtk_css_provider_load_from_data
2023-05-13 19:59:17 -04:00
Matthias Clasen
9a2d6d6d88
Improve css parser test coverage
2023-05-13 07:36:28 -04:00
Matthias Clasen
57dd88ee53
testsuite: Cosmetics
2023-05-12 19:52:42 -04:00
Matthias Clasen
8c92c619de
Test the deprecation support
...
Test gtk4-builder-tool validate --deprecations
2023-05-12 19:52:42 -04:00
Matthias Clasen
78d2002965
Add tests for gtk4-builder-tool enumerate
2023-05-12 19:52:42 -04:00
Matthias Clasen
25c4acb6d2
Add tests for hsv<>rgb conversion
2023-05-12 19:52:42 -04:00
Matthias Clasen
0a3dac10c6
Improve test coverage for the css parser
2023-05-12 19:52:42 -04:00
Matthias Clasen
c9afcd31c2
css: Improve transition test coverage
2023-05-12 19:52:42 -04:00
Matthias Clasen
09bab2b2df
Improve css parser test coverage
2023-05-12 08:38:39 -04:00
Matthias Clasen
a3ebc0329d
Improve test coverage for list models
2023-05-11 23:24:23 -04:00
Matthias Clasen
ba64e5588d
Add a little wait to focus tests
...
I don't know exactly why, but this seems
to help the tests not fail on X11.
2023-05-11 22:24:10 -04: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
9a9257d7be
tests: Don't disable vertex arrays
...
It doesn't work, and that makes tests fail.
2023-05-09 23:02:48 -04:00
Matthias Clasen
5c10f2b4cd
Improve coverage for half-float fallbacks
2023-05-09 23:02:30 -04:00
Matthias Clasen
676cd1e673
tests: Stop copying the tool tests
...
No point in doing that, and the meson feature
we are using here is deprecated.
2023-05-09 21:21:39 -04:00
Matthias Clasen
ef5f34c985
Update tests
2023-05-09 16:36:07 -04:00
Matthias Clasen
91ca6d0851
Merge branch 'wip/ebassi/gen-version-macros' into 'main'
...
Generate version and deprecation macros at build time
See merge request GNOME/gtk!5945
2023-05-09 18:23:40 +00: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
526ddfa866
Merge branch 'wip/otte/sections' into 'main'
...
Add GtkSectionModel
See merge request GNOME/gtk!5818
2023-05-09 16:36:55 +00:00
Emmanuele Bassi
265bc90524
build: Use Meson's gnu_symbol_visibility
...
Instead of injecting `-fvisibility=hidden` depending on a compiler check
ourselves, let Meson do it for us.
This also avoids us having to filter `-fvisibility=hidden` when reusing
the common compiler flags.
2023-05-09 16:43:25 +01:00
Benjamin Otte
46adfbef4f
listitemmanager: Create header items for sections
...
Now, finally, listitemmanager has all the necessary support to make
section headers work.
2023-05-09 17:00:40 +02:00
Benjamin Otte
38844fef4d
listitemmanager: Add GtkListHeaderBase and vfuncs
...
This is plumbing for section handling.
The vfuncs don't do anything, this is just the infrastructure.
2023-05-09 17:00:40 +02:00
Benjamin Otte
0ff88346cd
listitemmanager: Make sections configurable
...
Add a gtk_list_item_manager_set_has_sections() (default: FALSE) that
requires explicit turning on for the listitemmanager to gain section
support.
2023-05-09 17:00:40 +02:00
Benjamin Otte
5d2605a151
testsuite: assert widgets are in matched sections
...
All widgets that we display should have their sections known, so assert
that that is the case.
2023-05-09 17:00:40 +02:00
Benjamin Otte
40a7ec73a9
testsuite: Add a print function for the listitemmanager
...
This is very useful when debugging.
2023-05-09 17:00:40 +02:00
Benjamin Otte
6df8eafc3a
testsuite: Add verbose output to listitemmanager test
2023-05-09 17:00:39 +02:00
Benjamin Otte
e680abc723
listitemmanager: Add section tiles
...
For now, we just have a HEADER at the start and a FOOTER at the end.
That's hard enough to get right.
2023-05-09 17:00:39 +02:00
Benjamin Otte
cecaede610
testsuite: Improve listitemmanager test
...
It now has trackers!
2023-05-09 17:00:39 +02:00
Benjamin Otte
7856c52882
testsuite: Add tests for sections to filterlistmodel
2023-05-09 17:00:39 +02:00
Matthias Clasen
568023e6e6
Add a test for filterlistmodel sections
2023-05-09 17:00:39 +02:00
Benjamin Otte
41faddea40
testsuite: Add section tests to sortlistmodel test
2023-05-09 17:00:39 +02:00
Matthias Clasen
a09146df5a
Add a test for sortlistmodel sections
2023-05-09 17:00:39 +02:00
Benjamin Otte
d24291db98
testsuite: Add a listitemmanager test
2023-05-09 17:00:39 +02:00
Matthias Clasen
661022f2eb
Merge branch 'reftest-msvc' into 'main'
...
reftest-snapshot.c: Fix running reftests on Visual Studio
See merge request GNOME/gtk!5937
2023-05-09 14:48:18 +00:00
Matthias Clasen
58a5de6f5d
testsuite: Handle duplicate enum values
...
Our notify tests would fall over if there was
a duplicate enum value (within the first 10 values).
Make it handle that, by skipping the duplicate value.
2023-05-08 07:00:34 -04:00
Chun-wei Fan
a9ca72695f
reftest-snapshot.c: Fix running reftests on Visual Studio
...
On Visual Studio-like builds, shove a ".dll" suffix for the reftest
module so that we look for the correct DLL when running the tests.
2023-05-08 15:10:17 +08:00
Matthias Clasen
8495e0e412
Add a test for quick key events
2023-05-06 09:09:13 -04:00
Matthias Clasen
c9b0ca0de7
ci: Improve headless test logging
2023-05-06 09:02:25 -04:00
Matthias Clasen
8ad1189b0b
ci: Bump timeouts for headless tests
2023-05-05 16:21:54 -04: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
93ccf08c81
ci: Bump timeouts of headless tests
2023-05-05 12:05:10 -04:00
Matthias Clasen
852f46df19
Remove a no longer building test
2023-05-04 20:53:15 -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
ac0311b621
ci: Mark headless monitor test as working
2023-05-04 11:39:35 -04:00
Matthias Clasen
d288931b45
More debug spew
...
Lets see what MUTTER_DEBUG=screen-cast says.
2023-05-04 11:38:55 -04:00
Matthias Clasen
03adeecfa3
Add generous waits
...
These tests work in the smae container locally.
Perhaps this is down to timing?
2023-05-04 11:38:55 -04:00
Matthias Clasen
f98d1a6474
Mark the headless monitor test as failing
...
This is failing because I can't figure out
how to make wireplumber and pipewire work
in ci enough to let me add a new monitor :(
As usual, the test works fine locally.
2023-05-03 23:53:14 -04:00
Matthias Clasen
57e6aae80a
Try to fix dnd tests
2023-05-03 23:27:09 -04:00
Matthias Clasen
f23eaafc85
Typo fix
2023-05-03 23:27:09 -04:00
Matthias Clasen
926b26e9fc
headless tests: Add debug spew
...
Trying to track down what is going on with our
missing monitors.
2023-05-03 23:27:09 -04:00
Matthias Clasen
88f27c423c
ci: Launch pipewire and wireplumber
...
The headless tests require pipewire and wireplumber
for screencast sessions to work. So launch them.
2023-05-03 23:27:09 -04:00
Matthias Clasen
30342896d0
Use python3
...
No /usr/bin/python in our CI image :(
2023-05-03 23:27:09 -04:00
Matthias Clasen
be8e203edc
Make the headless input tests work
...
These needed some updates and workarounds.
They are now part of the testsuite and can
be run like this:
meson test -Cbuild --suite headless
2023-05-03 23:27:09 -04:00
Matthias Clasen
b85a137a68
Fix scan-build warning
2023-05-03 15:32:19 -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
Matthias Clasen
63b50f48a9
Merge branch 'harmonize-would_drop' into 'main'
...
Harmonize would_drop() replacement for g_log_writer_default_would_drop()
See merge request GNOME/gtk!4935
2023-04-28 22:55:42 +00:00
Benjamin Otte
778979cf0e
testsuite: Use GLTextureBuilder
2023-04-27 06:40:47 +02:00
Benjamin Otte
39583e40ef
testsuite: Allow accessors in interfaces
...
There are a lot of cases where properties are implemented in classes but
the getters for these exist in an interface that class implements.
A common Example is g_list_model_get_n_items() being the getter for
GtkWhateverListModel::n-items.
But also property implementations that don't use override_property()
(usually because they have a different default) are handled by this.
2023-04-20 17:47:54 +02:00
Benjamin Otte
be5f225022
testsuite: Be less verbose in accessor-apis test
...
Only print the tried names when --verbose is passed to the test.
2023-04-20 17:47:54 +02:00
Matthias Clasen
b6fac448d7
Merge branch 'matthiasc/for-main' into 'main'
...
Try harder to fix focus tests
See merge request GNOME/gtk!5842
2023-04-16 20:00:46 +00:00
Matthias Clasen
765f55dfbe
testsuite: Skip focus tests when necessary
...
If our window does not get focus, we can't reliably
test things that depend on widgets being focused.
2023-04-16 20:58:26 +02:00
Matthias Clasen
db6a116d49
Try harder to fix focus tests
...
The focus test now asserts that its window is active.
So we should not run them in parallel with other tests,
since those might steal the focus.
2023-04-16 20:08:03 +02:00
Benjamin Otte
27fd0b907d
testsuite: Fix broken test to not unref surfaces twice
...
The test doesn't hold 2 references, it holds only one.
The reason one unref can cause a leak is that some backends - like X11 -
only destroy the surface once the DestroyNotify event from the X server
has come in.
2023-04-16 19:28:21 +02:00
Matthias Clasen
585fb497c1
testsuite: Actually wait for focus
...
We were failing to properly iterate the main
context here. Oops.
2023-04-16 09:11:24 +02:00
Matthias Clasen
c57e5811f1
tests: Check is-focus instead of has-focus
...
We are not presenting windows here.
2023-04-16 08:50:35 +02:00
Benjamin Otte
b64f7050ba
testsuite: Make GLES testsuite run use GLES 2
...
We want to support GLES 2, so make sure we test that support.
Also force-disable common extensions we don't explicitly check for and
don't want to accidentally use.
2023-04-15 17:55:20 +02:00
Benjamin Otte
41454b63b4
testsuite: Add some more exhaustive testing to listlistmodel
2023-04-15 05:27:47 +02:00
Matthias Clasen
87e16f3ad9
testsuite: Check widget properties better
...
Check that setting a property after resetting
it works. An instance of this was fixed in the
previous commit.
2023-04-10 00:24:57 -04:00
Matthias Clasen
4e17900b9a
testsuite: Check more property notification
...
Handle more value types.
2023-03-30 21:39:55 -04:00
Matthias Clasen
577195a243
Make widget property setters behave
...
We want to allow setting a property to its
current value, while still having a precondition
for widget->parent being NULL otherwise.
2023-03-30 17:32:38 -04:00
Matthias Clasen
2650c4e974
testsuite: Check more property notification
...
We can easily check some object types
such as widgets.
2023-03-30 14:13:19 -04:00
Matthias Clasen
87f9e8a4c1
testsuite: Clean up some exclusions
...
Drop some exclusions from the notify test.
The tests work fine for these objects.
2023-03-30 14:13:19 -04:00
Matthias Clasen
dbefc330bd
Add some more keysyms tests
...
Spot-check a few keypad symbols.
2023-03-29 07:35:24 -04:00
Matthias Clasen
31ebe42d2e
testsuite: Update a test
...
cacecd2fb5
changed a warning message that
some tests check for. Oops.
2023-03-29 07:34:27 -04:00
Benjamin Otte
1449e487d3
Merge branch 'wip/otte/node-naming' into 'main'
...
node format: Allow naming textures and nodes
See merge request GNOME/gtk!5740
2023-03-29 11:28:15 +00: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
Kévin Commaille
cd860beb38
Add a test for splicing treelistmodel
2023-03-29 03:32:51 +02:00
Matthias Clasen
644b8a4214
testsuite: Add some GL texture tests
...
Tests creation and upload/download of GL
textures in various contexts.
2023-03-24 13:57:16 -04:00
Matthias Clasen
a8b92935d9
testsuite: Cosmetics
2023-03-24 13:57:16 -04: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
d04690d05c
a11y: Add a test for gtk_accessible_role_to_name
...
This should prevent !5693 from happening again
in the future.
2023-03-21 20:06:37 -04:00
Benjamin Otte
fb2a17a972
testsuite: Add a treelistmodel test
...
This one exhaustively tests reusing the same model as a child model for
many nodes.
This tracks that multiple items-changed signals emitted at the same time
(or multiple handlers for one such signal) doesn't put the treelistmodel
in an inconsistent state while it is handling all of them.
I'm not sure this (ab)use of treelistmodel should be officially
supported, but it works today, so let's test it to see if we can keep it
working.
2023-03-21 14:10:17 +01:00
Matthias Clasen
e7bb7785fa
testsuite: Improve setup name consistency
...
Rename the 'waylandgles' test setup to 'wayland_gles'.
2023-03-19 10:19:00 -04:00
Matthias Clasen
ace2122d45
testsuite: Add a test setup for slicing
...
Add a 'wayland_smalltexture' test setup that forces
the max texture size to be 1024, which lets us test
the texture slicing codepaths.
2023-03-19 10:15:22 -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
Benjamin Otte
bf55685000
treelistmodel: Track the item in the row
...
That way, we can return the item even after the row is removed. This is
particularly relevant in ListItemFactory::unbind callbacks because they
often use gtk_tree_list_row_get_item() and user code never tracks
changes to this property.
A side effect of this is that the item will survive until the row gets
destroyed, but that's what users expect anyway, so we can live with it.
Related: #5646
2023-03-19 06:55:05 +01:00
Matthias Clasen
fe79c7db16
testsuite: Stop using g_slice
2023-03-14 14:56:42 -04:00
Matthias Clasen
93edb08094
Start 4.12 development
2023-03-14 11:16:30 -04:00
Matthias Clasen
ad84ee8352
tests: Add more tests for texture scale nodes
2023-03-14 01:14:57 -04:00
Benjamin Otte
5c9fb3a636
filefilter: If not given a name, deduce one
...
Otherwise we end up with a critical when cosntructing the GVariant and
the portal claims our filter is for "[Invalid UTF-8]".
Test included
2023-03-10 17:10:30 +01:00
William Roy
aaeec84d75
Fix compile_resources present source directory
...
In certain scenarios, address the issue where gnome.compile_resources
fails to transmit the present source directory. This is most notably
visible with MSBuild.
2023-03-07 21:59:50 +00: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
Matthias Clasen
47aa0dcc7f
4.10.0
2023-03-04 08:28:12 -08:00
Matthias Clasen
90a3584c1d
Merge branch 'wip/otte/dont-scale-or-it-breaks' into 'main'
...
Add a test for lots of texture scaling and fix the fallout
See merge request GNOME/gtk!5509
2023-03-04 15:57:49 +00: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
Emmanuele Bassi
500128d186
a11y: Plug reference leaks
...
The gtk_accessible_get_at_context() getter is now transfer full, which
means we need to drop the reference when getting the GtkATContext.
2023-03-03 22:07:09 +00: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
Alexander Mikhaylenko
ca737b1411
testsuite: Add a GtkBuildable custom tag test
...
Just test that it doesn't error out during parsing.
2023-02-28 17:51:38 +04:00
Matthias Clasen
3de10847b9
gtk4-builder-tool: Prefer child properties
...
Rewrite <child> elements to use child properties
where that is easily possible.
Fixes : #5609
2023-02-19 21:48:56 -05:00
Benjamin Otte
d553f6941d
Merge branch 'wip/otte/for-main' into 'main'
...
listview: Measure children only, not self
See merge request GNOME/gtk!5535
2023-02-19 05:33:59 +00:00
Benjamin Otte
be6a4722c0
listview: Measure children only, not self
...
The previous code would include CSS padding/margin/border in the
measurement and that is wrong.
Until commit a96c75ff02
this was not actually visible, but afterwards
listitems were allocated 16px too wide.
Test included
2023-02-19 05:41:29 +01:00
Matthias Clasen
ad111087cc
Add a test for invisible text navigation
...
This shows that (at least some) things
work as expected.
See: #1811
2023-02-16 14:27:44 -05: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
679d510059
Merge branch 'template-child-dispose-order' into 'main'
...
gtk: Set widget template children to NULL before destroy unref
See merge request GNOME/gtk!4611
2023-02-12 16:36:52 +00: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
ddf8c4dd1a
Drop pixbuf format tests
...
We have our own loaders for the formats we
always want to support, so we don't need to
check for what gdk-pixbuf supports.
2023-02-07 07:54:22 -05:00
Matthias Clasen
d8cb11ec4a
Deprecate GtkStatusbar
...
The design patterns using statusbar are no longer popular,
and it is pretty easy to make a statusbar yourself with boxes
and labels, if you need one. The only thing special about
GtkStatusbar was its window resize handle, but that has
been gone for a long time.
2023-02-02 08:39:24 +01:00
Matthias Clasen
19bb043a85
testsuite: Fix various compiler warnings
...
These are mostly dead stores that clang
isn't happy with.
2023-01-14 00:14:43 -05:00
Matthias Clasen
63560061e8
Add some more text undo tests
...
Unsuccessfully trying to reproduce #5506 .
2023-01-10 07:34:55 -05:00
Matthias Clasen
47b5d0d546
Merge branch 'no-more-installed-tests' into 'main'
...
build: Drop the install-tests option
See merge request GNOME/gtk!5352
2022-12-20 05:33:56 +00:00
Matthias Clasen
d8d5cace2a
ci: Declare a reftest as flaky
...
fixed-widget-stacking is failing frequently due
to a blinking cursor showing up in one of the
windows in ci.
2022-12-19 23:52:51 -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
Matthias Clasen
596f59f471
tests: Maybe skip introspection tests
...
If we don't find the python gi module,
skip the introspection test.
2022-12-19 22:38:38 -05:00
Emmanuele Bassi
0db3666d3c
tests: Add shorthand-entry-border to the flaky suite
...
This test fairly consistently times out when running in a contended CI.
2022-12-20 02:18:25 +00:00
Matthias Clasen
aafc6279a3
Merge branch 'ebassi/ci-image-for-main' into 'main'
...
ci: Install Meson in the build jobs
See merge request GNOME/gtk!5335
2022-12-16 03:55:18 +00: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
fba4cea2e8
testsuite: Stop using gtk_widget_show/hide
2022-12-13 13:46:02 -05:00
Matthias Clasen
be324cc665
testsuite: Skip tests that miss charset support
...
This came up when running the tests in a fresh
toolbox missing the glibc-gconv-extra package.
2022-11-29 03:52:27 -05:00
Simon McVittie
94b57a967c
testsuite: Don't create .test files for flaky or failing tests
...
These tests can be run manually, but are not suitable for use as an
acceptance test, so let's not make frameworks like Debian's autopkgtest
run these when they run ginsttest-runner in the most obvious way.
Signed-off-by: Simon McVittie <smcv@debian.org>
2022-11-24 13:46:33 +00:00
Simon McVittie
957dd49ef7
testsuite: Use separate setups for unstable tests instead of should_fail
...
There are two possible interpretations of "expected failure": either
the test *must* fail (exactly the inverse of an ordinary test, with
success becoming failure and failure becoming success), or the test
*may* fail (with success intended, but failure possible in some
environments). Autotools had the second interpretation, which seems
more useful in practice, but Meson has the first.
Instead of using should_fail, we can put the tests in one of two new
suites: "flaky" is intended for tests that succeed or fail unpredictably
according to the test environment or chance, while "failing" is for
tests that ought to succeed but currently never do as a result of a
bug or missing functionality. With a sufficiently new version of Meson,
the flaky and failing tests are not run by default, but can be requested
by running a setup that does not exclude them, with a command like:
meson test --setup=x11_unstable --suite=flaky --suite=failing
As a bonus, now that we're setting up setups and their excluded suites
programmatically, the gsk-compare-broadway tests are also excluded by
default when running the test setup for a non-broadway backend.
When running the tests in CI, --suite=gtk overrides the default
exclude_suites, so we have to specify --no-suite=flaky and
--no-suite=failing explicitly.
This arrangement is inspired by GNOME/glib!2987 , which was contributed
by Marco Trevisan.
Signed-off-by: Simon McVittie <smcv@debian.org>
2022-11-24 13:46:33 +00:00
Matthias Clasen
d34ac99916
filefilter: Add properties for the criteria
...
Add construct-only properties for patterns,
suffixes and mime-types. This provides an
alternative way to specify these in ui files.
Related: #5350
2022-11-21 22:44:03 -05:00
Matthias Clasen
74806ed324
Merge branch 'fix-upside-down-labels' into 'main'
...
gsk: Avoid a crash with negative scales
See merge request GNOME/gtk!5236
2022-11-21 10:48:29 +00:00
Matthias Clasen
f0aefe2f7f
stringlist: Add a construct-only strings property
...
This enables creating string lists in ui files
without using custom markup.
Related: #5350
2022-11-20 14:07:45 -05: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
9682085e09
builder: Parse PangoAttrList values
...
Allow specifying PangoAttrList properties in the
serialized format supported by pango_attr_list_to_string().
Test included.
2022-11-18 10:42:50 -05:00
Matthias Clasen
ebe6d52252
Drop redundant glib version checks
...
We require GLib 2.72 now.
2022-11-17 22:49:56 -05:00
Matthias Clasen
e619d45ddc
Add a test for picker button constructors
...
This turns out to be hard enough that a test
is useful.
2022-11-07 15:32:51 +01:00
Matthias Clasen
5cb84afaa9
Add a test for POTFILES.in
...
Add a test that runs make-pot. This will only pass
if you've updated po/POTFILES.in and .skip after
moving source files around.
Unfortunately, it won't catch new source files that
are missing.
2022-10-30 08:52:02 -04:00
Matthias Clasen
9948053cd7
Deprecate GtkDialog
...
GtkDialog is too flexible in terms of UI (headerbars vs action bar,
etc), and has archaic APIs. It is time to retire it.
2022-10-29 15:27:53 -04:00
Matthias Clasen
f54ab91ff3
Deprecate GtkFileChooser and implementations
...
These are being replaced by GtkFileDialog.
This commit only moves the headers for GtkFileChooserWidget and
GtkFileChooserDialog to deprecated/, and keeps the implementations
in gtk/, since they will eventually be salvaged into a private
GtkFileChooserWindow.
2022-10-29 13:31:41 -04:00
Matthias Clasen
a51a6a3ee2
Deprecate GtkColorChooser and implementations
...
These are being replaced by GtkColorDialog
and GtkColorDialogButton.
This commit only moves the headers for GtkColorChooserWidget
and GtkColorChooserDialog to deprecated/, and keeps the
implementations in gtk/, since they will eventually be
salvaged into a private GtkColorChooserWindow.
2022-10-29 13:31:41 -04:00
Matthias Clasen
aeacc8f3c5
Add GtkFontDialogButton
...
This is like GtkColorDialogButton, but for fonts.
2022-10-29 13:31:41 -04:00
Matthias Clasen
7d0ebe02db
Add GtkFontDialog
...
This is similar to GtkColorDialog, but for fonts.
2022-10-29 13:31:41 -04:00
Matthias Clasen
655675e6a1
Add GtkColorDialogButton
...
This is a new color button implementation
built around GtkColorDialog.
2022-10-29 13:02:15 -04:00
Matthias Clasen
cd4dbd67a2
testsuite: Skip known-broken tests
...
The tiff pixbuf tests fail because of known
issues with the pixbuf tiff loader. Skip them.
Fixes : #4615
2022-10-18 23:22:47 -04:00
Matthias Clasen
5a6eab05e9
testsuite: Fix tiff pixbuf tests
...
This test wasn't actually testing what it claims,
since that functionality is broken in gdk-pixbuf.
Test it anyway.
2022-10-18 23:21:28 -04:00
Matthias Clasen
ccaaff406f
testsuite: Ignore deprecations
...
Some of our tests use deprecated style context
apis. Ignore the deprecations for now.
2022-10-12 15:35:00 -04:00
Matthias Clasen
c32fed9238
testsuite: Ignore deprecations
...
For now, just ignore deprecations. Eventually,
we will have to go through, drop demos that are
for wholly deprecated widgets, and update others.
2022-10-11 17:18:21 -04:00
Matthias Clasen
5e256590db
Deprecate treeviews and cell renderers
...
This includes
GtkCellArea
GtkCellAreaBox
GtkCellAreaContext
GtkCellEditable
GtkCellRenderer
GtkCellRendererAccel
GtkCellRendererCombo
GtkCellRendererPixbuf
GtkCellRendererProgress
GtkCellRendererSpin
GtkCellRendererSpinner
GtkCellRendererText
GtkCellRendererToggle
GtkCellView
GtkComboBox
GtkComboBoxText
GtkIconView
GtkListStore
GtkTreeModel
GtkTreeModelFilter
GtkTreeModelSort
GtkTreeStore
GtkTreeView
GtkTreeViewColumn
GtkTreeSelection
2022-10-11 17:18:21 -04:00
Matthias Clasen
7c5e1c6195
gtk: Rename some private headers
...
Improve the consistency of our private header
naming, by add 'private' to a bunch of them.
2022-10-05 23:01:28 -04:00
Matthias Clasen
7e9ca5b41d
Deprecate GtkEntryCompletion
...
We want to drop cell renderers and tree models
in GTK 5. The functionality of GtkEntryCompletion
may be replaced by a new widget in GTK 5.
2022-10-03 23:23:56 -04:00
Matthias Clasen
a527a4d82e
Deprecate the app chooser widgets
...
These are a family of pretty specialized widgets, and
are very rarely used. Instead of porting them away
from GtkTreeView and GtkComboBox, deprecate them.
2022-10-03 23:02:09 -04:00
Matthias Clasen
911abe2d2c
Fix expected test output
...
The major.minor version number shows up in the expected
output of this test, so it needs to be adjusted at the
beginning of every cycle.
2022-09-28 13:32:40 -04:00
Matthias Clasen
1e65d6640f
tests: Rewrite the icontheme tests
...
The lookup order tests were relying on out
debug spew using g_log, so they can redirect
the output by setting a log writer function.
Rewrite this to use g_test_subprocess() and
parse stderr.
2022-09-23 18:12:39 -04:00
Matthias Clasen
72d6241c84
Add a test for short compose sequences
...
Add a table that has a short sequence
to verify that we can parse this.
2022-09-12 22:30:47 -04:00
Matthias Clasen
aac3f1860f
Update test results
...
The table sizes change, even though none of our
test tables include short sequences.
2022-09-12 22:30:47 -04:00
Matthias Clasen
e8e69a1208
Make clipboard tests work with portals
...
This was not working right, since it hasn't been
tested with portals - there are no portals in ci.
2022-09-07 08:45:31 -04:00
Matthias Clasen
9cc1dcf2a4
4.8.0
2022-09-06 15:59:04 -04:00
Matthias Clasen
83bf193218
Add a test for treelistmodel row collapse
...
Test that we can expand and collapse a row, and then
add another child below it, without crashing.
Adapted from the testcase in #4595 .
This tests the fix in the previous commit.
2022-08-24 08:23:22 -04:00
Simon McVittie
3cfe04aa74
icontheme test: Assert that the subprocess passed
...
Noticed while backporting GLogWriterFunc fixes to 3.24.x (#5119 ).
Signed-off-by: Simon McVittie <smcv@debian.org>
2022-08-20 19:38:29 +01:00
Marc-André Lureau
3585da6b7f
build-sys: fix linker warning on win32
...
[196/296] Linking target testsuite/gtk/builder.exe
/usr/lib/gcc/x86_64-w64-mingw32/11.2.1/../../../../x86_64-w64-mingw32/bin/ld: warning: --export-dynamic is not supported for PE+ targets, did you mean --export-all-symbols?
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2022-08-18 11:44:34 +04:00
Matthias Clasen
6c3119bc33
tests: Check the error first
...
The error contains useful information when
things fail, so check it first to get useful
output in case of failure.
2022-08-11 07:29:56 -04:00
Hannes Müller
f23c124af2
Harmonize would_drop() replacement for g_log_writer_default_would_drop()
...
Reuse a better to read would_drop() from ./testsuite/reftests/gtk-reftest.c
in ./tools/gtk-builder-tool.c
Fixed wrong indentation in ./testsuite/reftests/gtk-reftest.c
2022-08-08 20:12:50 +02:00
Emmanuele Bassi
ba1a084899
Apply 1 suggestion(s) to 1 file(s)
2022-08-07 18:54:19 +00:00
Hannes Müller
703fc51d8e
build: fix for use with glib 2.66.0
...
Add missing #define g_memdup2() for gdksurface-broadway.c in case of enabled
broadway-backend as used otherwise.
Copy static would_drop() replacement for g_log_writer_default_would_drop()
from gtk-builder-tool.c to gtk-reftest.c
2022-08-06 21:11:08 +02:00
Emmanuele Bassi
6c37158bbc
Re-enable the TextBuffer wrap-mode serialization test
...
The private serialization function is now available on all platforms.
2022-08-04 23:39:54 +01:00