Chris Thrasher
4a463ec136
Throw custom sf::Exception
type
2024-08-25 12:17:49 -06:00
CosminPerRam
6a94997ac9
chore: update catch2 from 3.6.0 to 3.7.0
2024-08-15 08:54:23 +01:00
Chris Thrasher
9722fb3724
Add tests for Audio module types
2024-05-16 12:06:21 -06:00
Chris Thrasher
0777ce5ead
Update to Catch2 v3.6.0
2024-05-07 17:02:47 +00:00
binary1248
2386653bd3
Add GitHub actions support for running x86, x86_64 and arm64-v8a Android tests using an Android emulator.
2024-05-04 17:22:12 +00:00
binary1248
34fde883b9
Replaced OpenAL with miniaudio.
...
Co-authored-by: Chris Thrasher <chrisjthrasher@gmail.com>
Co-authored-by: kimci86 <kimci86@hotmail.fr>
Co-authored-by: vittorioromeo <mail@vittorioromeo.com>
2024-04-25 10:24:11 +02:00
Chris Thrasher
95a23c2d05
Add type trait tests for sf::SoundFileWriter
...
Other Audio module types get this same treatment so we ought to
also have a .test.cpp for this header.
2024-04-16 17:05:42 -06:00
Chris Thrasher
cb651c063c
Add tests for sf::SoundFileReader
2024-04-16 17:05:42 -06:00
binary1248
7e1765717a
Fixed coverage data not being collected for MinGW builds because OpenCPPCoverage relies on pdb data being available.
2024-04-11 17:32:24 -06:00
binary1248
90fb07066b
Replaced Codecov with Coveralls.
2024-04-11 10:46:27 -06:00
Chris Thrasher
f1bdacb57f
Add tests for sf::Glsl
types
2024-04-10 20:39:20 -06:00
Lukas Dürrenberger
e3b7d87373
Update Catch2 to v3.5.4
2024-04-10 19:17:11 -06:00
Chris Thrasher
d7fb1bf0f6
Upgrade Catch2
2024-03-04 14:51:00 -07:00
vittorioromeo
72d30e7beb
Update Catch2 to v3.5.2
2024-02-05 19:58:44 +01:00
Kipernal
eb07e1e6c5
Added support for stencil testing.
...
Co-authored-by: binary1248 <binary1248@hotmail.com>
Co-authored-by: Chris Thrasher <chrisjthrasher@gmail.com>
2024-01-29 08:13:14 -07:00
Corentin Schreiber
ebf485737f
Add texture coordinate type to sf::RenderStates
2024-01-25 23:45:00 -07:00
Chris Thrasher
ea42079da9
Update Catch2
...
https://github.com/catchorg/Catch2/releases/tag/v3.5.0
2023-12-10 19:40:28 -07:00
Chris Thrasher
f3341359eb
Add tests for sf::SoundFileFactory
2023-11-26 19:53:07 -05:00
binary1248
8c9c5c5b99
Added missing SFML_USE_STATIC_STD_LIBS checks to CMake configuration.
2023-10-31 23:22:28 +01:00
Chris Thrasher
2cbcd60a45
Remove redundant link library
...
Clang was warning about this
ld: warning: ignoring duplicate libraries: 'lib/libsfml-system-s-d.a'
2023-10-23 13:07:27 +02:00
Chris Thrasher
3750074238
Add tests for sf::Vulkan
2023-09-24 21:12:18 -06:00
Chris Thrasher
f40d5ac21d
Add tests for sf::Joystick
2023-09-24 20:58:41 -06:00
Chris Thrasher
d56e1838a0
Shallow clone Catch2
...
This takes a 4 second configuration time for the entire project with
examples and tests and turns that into 3! Whopping 25% reduction in
configuration time. This effect is likely to be even larger on machines
without exceptionally good internet connections.
Before:
$ hyperfine 'rm -rf build && cmake --preset dev'
Benchmark 1: rm -rf build && cmake --preset dev
Time (mean ± σ): 4.076 s ± 0.130 s [User: 2.148 s, System: 1.376 s]
Range (min … max): 3.963 s … 4.321 s 10 runs
After:
$ hyperfine 'rm -rf build && cmake --preset dev'
Benchmark 1: rm -rf build && cmake --preset dev
Time (mean ± σ): 3.007 s ± 0.313 s [User: 1.061 s, System: 1.160 s]
Range (min … max): 2.783 s … 3.805 s 10 runs
Co-authored-by: binary1248 <binary1248@hotmail.com>
2023-09-15 16:07:52 -06:00
Chris Thrasher
d304d1e57b
Add tests for sf::Clipboard
2023-09-05 16:18:18 -06:00
Chris Thrasher
71162395d7
Add tests for sf::Keyboard
2023-09-05 15:19:53 -06:00
Chris Thrasher
05b69119e4
Add tests for sf::Event
2023-08-27 10:04:14 -06:00
Chris Thrasher
bb9ba0d7ef
Update Catch2
...
https://github.com/catchorg/Catch2/releases/tag/v3.4.0
2023-07-13 11:19:17 -06:00
Chris Thrasher
e6cc75f8a6
Fix how we specify CATCH_CONFIG_FAST_COMPILE
...
Fixes a warning that was emitted about how we were doing this wrong
after CMake policy 0077 was added.
2023-05-18 10:43:58 -06:00
Chris Thrasher
f6dfc04938
Switch to Catch2
2023-05-13 12:38:11 -06:00
Chris Thrasher
1c5c8ad700
Add tests for sf::sleep
2023-04-28 15:01:11 -06:00
binary1248
acba3e6165
Replaced xvfb-run with manually starting Xvfb and running fluxbox to emulate a window manager and combined test and coverage steps into a single step.
2023-03-27 19:46:07 -06:00
Chris Thrasher
0b62543942
Don't automatically run tests after build
...
The runtests target must be used on Windows for the sake of code
coverage. However we can't use that target on all other platforms
because on some non-Windows platforms like Android, the tests don't
even get configured. If you try to build a target that doesn't exist
you get a hard failure. Using CTest is better because it will still
return zero even if no tests are found as is the case on Android.
2023-03-14 20:23:17 -06:00
Chris Thrasher
2af65286b7
Add tests for sf::WindowBase
2023-02-08 00:22:42 -07:00
Chris Thrasher
84f56d0936
Add option for skipping tests that require an attached display
2023-01-18 16:06:00 -07:00
Chris Thrasher
b2e918bafc
Simplify how test runner command is created
2023-01-18 16:06:00 -07:00
Chris Thrasher
e8fa5d7d31
Add CI job for Clang on Windows
2022-12-14 15:26:08 -07:00
Chris Thrasher
4807c779a7
Apply warnings to install test
...
Because the install test project can't access SFML CMake functions,
these warnings are only applied when building the install tests as
a part of SFML.
2022-11-29 00:47:32 -07:00
Jonny Paton
e4bffe5b84
Rename test files to be unique
2022-10-23 16:39:12 +02:00
Chris Thrasher
3d02d490bd
Hide doctest sources from compile commands database
...
This ensure that tools like run-clang-tidy don't try to analyze them
and better mimmicks how Doctest would behave if we were depending on
Doctest via find_package instead.
2022-10-17 18:29:56 -06:00
Chris Thrasher
229e3f61f4
Use doctest-provided main
implementation
2022-10-16 14:55:33 -06:00
Chris Thrasher
e4f81af337
Test install interface
...
Skip Android, iOS, and Framework builds simply because I can't get
them to work and don't want that holding up getting the rest of the
install tests merged.
Skip the Static DRM install test because there's a bug in the install
that needs to be fixed.
2022-10-15 09:07:49 +02:00
Chris Thrasher
ff685de1bf
Ensure add_custom_command
uses VERBATIM
...
https://cmake.org/cmake/help/latest/command/add_custom_command.html
"Use of VERBATIM is recommended as it enables correct behavior."
The docs basically say that this is required.
2022-10-12 00:23:35 +02:00
Chris Thrasher
b848a7b29a
Only reference the project's directories, not parent directories
2022-10-12 00:23:35 +02:00
Chris Thrasher
9feef3708d
Test existence of copy and move semantics
2022-10-10 11:46:55 -06:00
Chris Thrasher
50cec7d2ed
Treat each test case as a unique test
2022-09-10 20:03:25 +03:00
Chris Thrasher
b7510fd09e
Fix formatting and style
...
Use all lower_case commands with no space between the command name
and the open parentheses. Don't repeat conditional in else() and
endif() calls.
2022-08-22 11:26:57 +08:00
Chris Thrasher
49fd5887c8
Add tests for SFML/Config.hpp
2022-08-03 23:39:37 +02:00
Chris Thrasher
a47eb8320a
Remove vendored doctest header
2022-07-20 08:56:59 +02:00
Bambo-Borris
c6f7fcaa2a
Add tests for sf::MemoryInputStream
2022-06-28 14:33:21 +02:00
Chris Thrasher
a57640c2c8
Require stringification for all tested types
...
This ensures that if a printing function is not provided, compilation
fails. This prevents problems where a header is accidentally removed
that was previously providing an operator<< overload or prevents
new tests from being added without print support for all directly
tested types.
2022-06-27 00:22:16 +02:00