test


Log

Author Commit Date CI Message
Eddy Jansson 5c1f5a73 2022-04-28T20:57:20 test: Correct invalid enum length. Ensure that they can't break like this again.
Ryan C. Gordon 7d7ec9c9 2022-04-26T16:41:28 x11: Remove XVidMode and Xinerama support. Fixes #1782.
Sam Lantinga e551384a 2022-04-26T14:54:14 Added functions to get the platform dependent name for a joystick or game controller
Eddy Jansson 5bc29334 2022-04-20T15:53:25 test: Basic tests for SDL_FRectEquals Based on the integer version. These tests mostly check that input isn't mangled and that invalid input gives the expected negative result.
Simon McVittie 68b6fff2 2022-04-12T14:05:06 test: Copy utf8.txt to build directory testiconv wants this. Signed-off-by: Simon McVittie <smcv@collabora.com>
Simon McVittie b4256d03 2022-04-12T14:25:26 testevdev: Adapt to a broader definition of keyboards At the time I contributed this unit test, SDL had a relatively narrow definition of what is a keyboard, approximately matching udev ID_INPUT_KEYBOARD. Now it uses the equivalent of udev ID_INPUT_KEY, which matches anything with keyboard keys, and not just reasonably complete alphanumeric keyboards. Fixes: 040bd7a9 "Fix udev not detecting ID_INPUT_KEY devices when udev is not running" Signed-off-by: Simon McVittie <smcv@collabora.com>
Simon McVittie c2946902 2022-04-12T14:16:29 testevdev: Recognise touchpads as such At the time I contributed this unit test, SDL didn't understand Linux touchpads, but now it does. Fixes: 373216ae "Added support for touchpads in the Linux evdev code" Signed-off-by: Simon McVittie <smcv@collabora.com>
capehill 006a5a9e 2022-03-28T21:01:06 testgles2: Fix buffer object sizes
Christoph Reichenbach 6cd444f0 2022-04-02T21:28:56 Visualise scroll wheel events in testmouse
capehill 0dcfa92e 2022-03-26T19:31:17 testgles2: Call correct function to get shader info log and add link status checking
Ryan C. Gordon beecae31 2022-03-26T08:42:09 testshader: use SDL_malloc instead of SDL_stack_alloc.
capehill d6122704 2022-03-26T12:40:08 Initialize compile status variable and check also program link status
Sylvain 7f1feee0 2022-03-21T10:20:04 Fixed bug #2426 - SDL_RenderReadPixels result is unspecified and fails testautomation Call SDL_RenderPresent after calling SDL_RenderReadPixels. From "include/SDL_render.h": "If you're using this on the main rendering target, it should be called after rendering and before SDL_RenderPresent()."
Ozkan Sezer 01663238 2022-03-17T14:56:50 testplatform.c: move static asserts out of TestTypes().
Sylvain c44966b7 2022-03-15T17:48:38 Fixed bug #2691 - re-enable surface_testCompleteSurfaceConversion for ARGB2101010
IOBYTE 13756b5c 2022-03-04T10:47:25 Add X1 and X2 button support to mouse test
Sam Lantinga 18032979 2022-02-15T13:07:51 Added the hint SDL_HINT_JOYSTICK_ROG_CHAKRAM to control whether ROG Chakram mice show up as joysticks This hint defaults off, but when it is enabled the mice will have a game controller mapping set up for Profile 3 (set in the Armoury Crate software)
Wouter Wijsman 4cb61818 2022-02-10T18:58:50 Do not build loadso test eboot for PSP
Sylvain 94e5c3f3 2022-02-08T11:38:34 testgesture: display device name with SDL_GetTouchName()
Ryan C. Gordon ca22b30e 2022-01-24T22:32:58 testgles2: Use vertex buffer objects instead of client-side arrays. GLES2 always has them, and they work without hacks on Emscripten, unlike client-side arrays. I cleaned it up slightly, but this patch was mostly written by @bing2008. Fixes #5258.
Ozkan Sezer 836a4ec7 2022-01-08T22:35:02 updates to os/2 build
Ozkan Sezer 93cab32d 2022-01-08T14:40:20 minor update to test/Makefile.os2
Wouter Wijsman e0c53991 2022-01-06T22:29:23 Don't make psp eboot for testoffscreen
Wouter Wijsman eca198d5 2022-01-05T11:50:52 Don't build an eboot for testgesture for PSP
Wouter Wijsman cd6cb959 2022-01-05T11:33:51 Only copy resources to PSP eboot directory if it exists
Wouter Wijsman 9d0b4d85 2022-01-05T11:18:26 Don't build EBOOT files for all tests for PSP
Wouter Wijsman b2ca62f2 2022-01-05T11:18:09 Make sure all tests have the resources they need
Wouter Wijsman fcb638ff 2022-01-03T19:12:09 Copy test resources to correct directory on PSP
Wouter Wijsman 5e84f638 2022-01-03T18:56:02 Rename test directories for PSP and only build PRX if asked
Wouter Wijsman bf233607 2022-01-03T18:41:21 Make tests build for PSP and make them able to launch
Sam Lantinga 120c76c8 2022-01-03T09:40:00 Updated copyright for 2022
Ozkan Sezer 563ef2ae 2021-12-01T01:56:50 regenerated configure scripts.
Ozkan Sezer efa1aa9a 2021-12-01T01:55:56 initial attempt at adding os2 support to autotools
Sam Lantinga 4b571c62 2021-11-29T09:00:26 Added an option to map the touchpad button for Sony controllers
Ozkan Sezer ede73b4c 2021-11-28T23:02:02 testnativeos2.c: make its code style to match SDL2.
Sam Lantinga f1c15aa3 2021-11-28T08:56:25 Tests cover the latest SDL features
Nate River 6c25aed4 2021-11-27T14:01:18 added hint for joysticks to stablize sixaxis & dualshock controllers (#5007)
Ozkan Sezer d2871a34 2021-11-23T15:10:50 testhaptic.c, testjoystick.c: fixed -Wshadow warnings.
Sam Lantinga e6a4230d 2021-11-23T03:51:32 Revert testevdev libc changes This file uses internal SDL headers as a hack, without actually being built as part of SDL, so we should use normal C functions here.
Ozkan Sezer 3eaa80bb 2021-11-23T14:22:02 testgamecontroller.c: fixed -Wshadow warnings.
Ozkan Sezer 370b8318 2021-11-23T14:01:10 testmouse.c: fixed -Wshadow warnings.
Sylvain f1582f54 2021-11-22T11:27:40 Fix comment
Sylvain d31251b0 2021-11-21T22:30:48 use SDL's functions version inplace of libc version
Ozkan Sezer fadf41fc 2021-11-20T21:55:20 remove excess whitespace
Ryan C. Gordon e86d4bde 2021-11-20T13:33:29 test: Makefile should copy unifont file, for testime.c to use.
Ozkan Sezer 495ee42a 2021-11-20T01:15:20 testcustomcursor.c: replaced libc sscanf with SDL_sscanf
Ozkan Sezer 990fb668 2021-11-20T01:02:02 tests: several -Wwrite-strings fixes.
Cameron Gutman eb98ff47 2021-11-13T13:05:02 testmessage: Fix overread of stack variable
Ozkan Sezer 62b41f61 2021-11-13T21:29:50 fix build of testmouse.c
Cameron Gutman f124259e 2021-11-12T17:25:24 testautomation: fix use-after-free when restoring hint value
Ozkan Sezer e688a95b 2021-11-12T23:55:40 updated os2 makefile for tests
Misa 3bf7994f 2021-09-27T14:38:12 Add and use `SDL_FALLTHROUGH` for fallthroughs Case fallthrough warnings can be suppressed using the __fallthrough__ compiler attribute. Unfortunately, not all compilers have this attribute, or even have __has_attribute to check if they have the __fallthrough__ attribute. [[fallthrough]] is also available in C++17 and the next C2x, but not everyone uses C++17 or C2x. So define the SDL_FALLTHROUGH macro to deal with those problems - if we are using C++17 or C2x, it expands to [[fallthrough]]; else if the compiler has __has_attribute and has the __fallthrough__ attribute, then it expands to __attribute__((__fallthrough__)); else it expands to an empty statement, with a /* fallthrough */ comment (it's a do {} while (0) statement, because users of this macro need to use a semicolon, because [[fallthrough]] and __attribute__((__fallthrough__)) require a semicolon). Clang before Clang 10 and GCC before GCC 7 have problems with using __attribute__ as a sole statement and warn about a "declaration not declaring anything", so fall back to using the /* fallthrough */ comment if we are using those older compiler versions. Applications using SDL are also free to use this macro (because it is defined in begin_code.h). All existing /* fallthrough */ comments have been replaced with this macro. Some of them were unnecessary because they were the last case in a switch; using SDL_FALLTHROUGH in those cases would result in a compile error on compilers that support __fallthrough__, for having a __attribute__((__fallthrough__)) statement that didn't immediately precede a case label.
Sam Lantinga abc12a83 2021-11-11T15:58:44 Revert "Add and use `SDL_FALLTHROUGH` for fallthroughs" This reverts commit 66a08aa3914a98667f212e79b4f0b9453203d656. This causes problems with older compilers: https://github.com/libsdl-org/SDL/pull/4791#issuecomment-966630997
Cameron Gutman fe09a493 2021-11-11T15:53:11 joystick: Add APIs to query rumble support
Misa 66a08aa3 2021-09-27T14:38:12 Add and use `SDL_FALLTHROUGH` for fallthroughs Case fallthrough warnings can be suppressed using the __fallthrough__ compiler attribute. Unfortunately, not all compilers have this attribute, or even have __has_attribute to check if they have the __fallthrough__ attribute. [[fallthrough]] is also available in C++17 and the next C2x, but not everyone uses C++17 or C2x. So define the SDL_FALLTHROUGH macro to deal with those problems - if we are using C++17 or C2x, it expands to [[fallthrough]]; else if the compiler has __has_attribute and has the __fallthrough__ attribute, then it expands to __attribute__((__fallthrough__)); else it expands to an empty statement, with a /* fallthrough */ comment (it's a do {} while (0) statement, because users of this macro need to use a semicolon, because [[fallthrough]] and __attribute__((__fallthrough__)) require a semicolon). Applications using SDL are also free to use this macro (because it is defined in begin_code.h). All existing /* fallthrough */ comments have been replaced with this macro. Some of them were unnecessary because they were the last case in a switch; using SDL_FALLTHROUGH in those cases would result in a compile error on compilers that support __fallthrough__, for having a __attribute__((__fallthrough__)) statement that didn't immediately precede a case label.
Sam Lantinga dc4c7d95 2021-11-10T09:48:49 Fixed infinite loop in SDL_vsnprintf() if the format string is too large for the output buffer Fixes https://github.com/libsdl-org/SDL/issues/4940
Eric Wasylishen 0d987936 2021-11-09T22:03:42 testwm2: Fix video modes menu hit detection when highdpi or logical size used (#4936) * SDLTest_CommonDrawWindowInfo: log SDL_RenderGetScale, SDL_RenderGetLogicalSize * testwm2: fix video modes menu hit detection in High DPI cases - also when logical size is specified, e.g. `--logical 640x480 --resizable --allow-highdpi` * add function to determine logical coordinates of renderer point when given window point * change since to the targeted milestone * fix typo * rename for consistency * Change logical coordinate type to float, since we can render with floating point precision. * add function to convert logical to window coordinates * testwm2: use new SDL_RenderWindowToLogical * SDL_render.c: alternate SDL_RenderWindowToLogical/SDL_RenderLogicalToWindow Co-authored-by: John Blat <johnblat64@protonmail.com> Co-authored-by: John Blat <47202511+johnblat64@users.noreply.github.com>
Sam Lantinga cdb4d8f2 2021-11-07T09:39:57 Added a test case for snprintf of 0.0 This verifies regressions in https://github.com/libsdl-org/SDL/issues/4795
Eric Wasylishen a0e055a7 2021-11-07T02:48:29 testwm2: add mode menu, click on a mode to call SDL_SetWindowDisplayMode
Sam Lantinga 35b0baaa 2021-11-06T19:25:06 Unfixed typo
Sam Lantinga 1d40c69a 2021-11-05T22:52:03 Fixed typo
Eddy Jansson e2ba84a5 2021-11-02T19:30:17 testtimer: Be more like the C90's.
Eddy Jansson 4ab7ee19 2021-11-02T18:58:06 testtimer: Add basic sanity check for SDL_GetTicks*()
Ryan C. Gordon d78cb9e9 2021-10-23T19:27:10 testtimer: added SDL_GetTicks64() calls.
Cameron Gutman 210713a6 2021-10-31T19:11:09 cmake: Work around bug in opengl32.lib detection on MSVC ARM64
Cameron Gutman 77141e84 2021-10-31T18:53:11 cmake: Fix test linking with MinGW
Cameron Gutman 618b0d41 2021-10-30T12:05:11 cmake: Remove SDL2_test_resources dummy hack It doesn't work properly on MSVC because the dummy target fails to link
Ozkan Sezer f3640e26 2021-10-31T08:47:00 tests: minor update to acinclude.m4::pkg.m4
Ozkan Sezer cc3fe1a1 2021-10-31T08:25:24 tests: don't fail configury if libunwind is not available.
Ozkan Sezer c4016277 2021-10-31T08:14:50 testsurround.c: remove unnecessary libc includes and stdint.h types
Ozkan Sezer e28e3993 2021-10-31T08:00:20 testsurround.c: add missing newline at end of file.
Cameron Gutman cd66c050 2021-10-29T01:11:59 testsurround: Add surround sound channel tester
Cameron Gutman 6b8e880a 2021-10-26T20:27:34 checkkeysthreads: Create a renderer for window display on Wayland Applies checkkeys patch from 105f1206 to checkkeysthreads.
Ozkan Sezer 7ac0c73a 2021-10-25T21:40:04 regenerated test/configure
David Gow c57bcb47 2021-10-23T14:46:03 test: Fix building with libunwind under autotools There are two issues which are stopping the SDL tests from building on my machine: - libunwind is not being linked - Even if it is, it is missing several symbols. The first is fixed by having the test programs link against libunwind if available. Technically, SDL2_test should be linking against it, as it's used in SDL_test_memory.c, but as SDL2_test is a static library, it can't itself import libunwind. We just assume that if it's present on the system, we should link it directly to the test programs. This should strictly be an improvement, as the only case where this'd fail is if SDL2 was compiled when libunwind was present, but the tests are being compiled without it, and that'd fail anyway. The second is fixed by #define-ing UNW_LOCAL_ONLY before including libunwind.h: this is required to make libunwind link to predicatable symbols, in what can only be described as a bit of a farce. There are a few more details in the libunwind man page, but the gist of it is that it disables support for "remote unwinding": unwinding stack frames in a different process (and possibly from a different architecture?): http://www.nongnu.org/libunwind/man/libunwind(3).html Note that I haven't tried this with CMake: I suspect that it'll work, though, as the CMakeLists.txt seems to have SDL2 link against libunwind if it's present. This adds an ugly extra dependency to SDL2, but does mean that issue 1 isn't present. The UNW_LOCAL_ONLY change shouldn't be build-system-specific.
Brick f30e2e43 2021-10-06T22:52:33 Fix compiler warnings in testvulkan.c MSVC gives the following warnings when compiling testvulkan.c: ``` testvulkan.c(656,1): warning C4018: '<': signed/unsigned mismatch testvulkan.c(656,1): warning C4018: '>': signed/unsigned mismatch testvulkan.c(660,1): warning C4018: '<': signed/unsigned mismatch testvulkan.c(660,1): warning C4018: '>': signed/unsigned mismatch ```
Sylvain decd1b4d 2021-09-23T22:28:45 testdraw2: display FPS similarly to testsprit2. fix helper syntax
Sam Lantinga 79b0aae8 2021-09-22T11:42:10 The return value of SDL_snprintf is the number of characters that would have been written. Fixes https://github.com/libsdl-org/SDL/issues/4762
Sam Lantinga 42ae9116 2021-09-22T10:01:42 Getting "(null)" when formatted printing NULL is a valid result
Sam Lantinga a4a9d284 2021-09-22T09:56:06 You may need to wait a bit for SDL_WarpMouseInWindow() to complete
Sam Lantinga 94a42af5 2021-09-22T09:49:41 Fixed the name of the verbose hints
Sam Lantinga b914bc39 2021-09-22T09:48:51 SDL_PIXELFORMAT_ARGB2101010 isn't fully supported for all surface conversion paths yet
Sam Lantinga e5d59fa7 2021-09-22T09:31:26 Fixed building testgles2 on Linux
Sam Lantinga eb3bf80f 2021-09-21T18:15:09 Fixed compiler warnings using Visual Studio 2019
Ozkan Sezer e55b8507 2021-09-20T23:50:02 minor tidy-up in os2 makefile for tests.
Ozkan Sezer e967f002 2021-09-10T00:01:20 testmouse.c: remove unused local var.
Cameron Cawley 83020658 2021-09-09T21:33:35 Add testmouse
Ozkan Sezer 2c6f52d1 2021-09-06T15:24:50 regenerate test/configure really with ac2.69
Simon McVittie 2e3a415b 2021-09-06T13:09:09 test: Use a static pattern rule to copy data to $(builddir) The version with an implicit pattern rule tended to fail if test/ was built in an "out-of-tree" build directory not below test/, for example: cd SDL mkdir _build-test ( cd _build-test; ../test/configure ) make -C _build-test as a result of the pattern rule first checking for axis.bmp, then for ../test/axis.bmp, then ../test/../test/axis.bmp, and so on until the maximum path length was reached. Note that this requires GNU make. The FreeBSD ports file for SDL seems to use GNU make (gmake) already, so presumably SDL's build system is already relying on GNU make extensions. Signed-off-by: Simon McVittie <smcv@debian.org>
Ozkan Sezer 9837a327 2021-09-06T14:55:40 regenerated test/configure
Simon McVittie 91ce6019 2021-09-06T10:40:23 test: Fix path used in AC_CONFIG_AUX_DIR AC_CONFIG_AUX_DIRS is an undocumented, internal version of AC_CONFIG_AUX_DIR that takes a whitespace-separated list, instead of a single path to add to the list. It also does not automatically treat the given path as being relative to the $srcdir, unlike the documented AC_CONFIG_AUX_DIR. Newer versions of autoconf treat the argument to AC_CONFIG_AUX_DIRS as being literal (they do not expand the shell variable), causing autoreconf to fail if $srcdir is explicitly specified. The argument to AC_CONFIG_AUX_DIR is checked relative to $srcdir anyway, so there is no need to specify $srcdir a second time. Resolves: https://github.com/libsdl-org/SDL/issues/4719 Signed-off-by: Simon McVittie <smcv@debian.org>
Ryan C. Gordon 79c7a171 2021-08-24T12:41:41 testvulkan: reformatted to more-closely match SDL coding conventions.
Lionel Landwerlin b073d275 2021-08-17T16:52:49 test/vulkan: fix/workaround validation errors
Ryan C. Gordon abba1811 2021-08-23T20:18:57 testvulkan: support multiple windows. Fixes #4363.
Ozkan Sezer f5c0cdea 2021-08-19T01:28:10 testgeometry.c: fix build in c89 mode
Sylvain bc2173ba 2021-04-06T21:49:23 Add testgeometry to draw a non uniform triangle --use-texture: an option to load icon.bmp as a texture handle mouse motion: rotate the triangle
Sylvain 53bcb3e0 2021-04-06T21:38:24 Add an option to 'testsprite2' to render slicing into triangles. [--use-rendergeometry mode1|mode2] mode1: Draw sprite2 as triangles that can be recombined as rect by software renderer mode2: Draw sprite2 as triangles that can *not* be recombined as rect by software renderer Use an 'indices' array
David Gow fbc36490 2021-08-14T22:29:05 Use the new SDL_clamp() macro where sensible There were a few places throughout the SDL code where values were clamped using SDL_min() and SDL_max(). Now that we have an SDL_clamp() macro, use this instead.
David Gow 105f1206 2021-08-13T21:25:35 checkkeys: Create a renderer for window display on Wayland On Wayland -- or at least on some Wayland implementations -- windows aren't shown until something has been rendered into them. For the 'checkkeys' test program, this means that keyboard input isn't registered, making the program rather useless. By creating a renderer and presenting once, the window is properly displayed, and the test behaves as it does under X11 (including XWayland). The exact same thing was done with testmessge in 1cd97e2695 (PR #4252)
Sam Lantinga cb1e20b0 2021-08-10T17:50:17 Added KMOD_SCROLL to track the scroll lock state Fixes https://github.com/libsdl-org/SDL/issues/4566