This adds a bunch of tests that tests things like
What is currently not tested is when the client has some size constraints, e.g. a terminal emulator only resizing according to the character grid.
There are one test that I didn't add on X11 because it just didn't work, and I couldn't be bothered to fix. This was unmaximizing to a different size from what was before being maximized.
The pipeline will fail initially, as this relies on gtk having some fixes: gtk!1606 (merged)