wxwidgets/tests
Vadim Zeitlin 94b1a17aeb Add AddAvailableCatalog() and use it in AddStdCatalog()
The new function only returns true if the catalog could be really
loaded and not if it is considered not to be needed because the message
ID language (which is typically "en-US") happens to be present in the
preferred UI languages list (which seems to always include "en-US" in at
least Western European MSW).

This allows to distinguish, albeit in a rather awkward (but
backwards-compatible) way between having a translation for the given
language and not needed such translation.

It is still not clear if it is really correct to return "en-US" from the
list of preferred languages even if the user has never intentionally
configured the OS to indicate that English is acceptable, but at least
now we can work around this issue and use AddAvailableCatalog() in
AddStdCatalog() to make sure we only skip loading unversioned wxstd.mo
if the versioned wxstd-x.y.mo file is really found instead of never
doing it, as was the case until now (see #23886).

Also add GetBestAvailableTranslation() helper which seems more useful
than the existing GetBestTranslation() one and is similarly related to
it.

See #18227.
2023-10-02 19:21:48 +02:00
..
any Avoid using implicit assignment operator in wxAny test 2023-07-04 02:08:32 +02:00
archive Define wxArchiveIterator in all builds, not just STL one 2023-04-09 02:33:22 +02:00
arrays Add wxArrayString::AsVector() too 2023-04-08 22:45:11 +01:00
base64 Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
benchmarks Rebake after the previous commit 2023-07-29 18:13:29 +02:00
cmdline Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
config Don't needlessly use wxScopedPtr in wxConfig unit test 2023-03-06 23:22:05 +01:00
controls Enable wxStyledTextCtrl unit test in static builds too 2023-07-29 16:01:33 +02:00
datetime Handle 'T' separator in wxDateTime::ParseDateTime() 2022-11-30 02:23:37 +01:00
drawing Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
events Suppress warning in tests checking legacy Connect() 2023-07-04 02:08:32 +02:00
exec Avoid failures in wxKill() unit tests under Windows 11 2023-04-01 19:14:18 +02:00
file Remove wxUSE_UNICODE checks as they're always true now 2022-10-27 19:43:30 +02:00
filekind Initialize unused variable in FileKindTestCase to avoid a warning 2022-06-29 22:10:55 +02:00
filename Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
filesys Replace wxScopedPtr with std::unique_ptr in the tests 2023-03-06 23:34:44 +01:00
font Remove Mac workaround from wxFont unit test not needed any more 2023-02-07 10:59:54 +01:00
fontmap Remove BCC-specific hdrstop pragma from everywhere 2020-10-12 21:58:37 +02:00
formatconverter Remove wxUSE_UNICODE checks as they're always true now 2022-10-27 19:43:30 +02:00
fswatcher Replace wxScopedPtr with std::unique_ptr in the tests 2023-03-06 23:34:44 +01:00
fuzz Fix harmless warning about multiline comment in fuzzer runner 2020-05-02 03:38:28 +02:00
geometry Add wxSize::IsAtLeast() helper 2023-08-25 20:37:58 +02:00
graphics Fixup! get rid of unnecessary hacks 2023-09-19 00:58:47 +01:00
hashes Define explicit copy ctor for classes with assignment operator 2023-07-04 01:29:51 +02:00
html Replace wxScopedPtr with std::unique_ptr in the tests 2023-03-06 23:34:44 +01:00
image Fix crash when reading truncated GIF image 2023-07-02 18:06:03 +01:00
interactive Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
intl Add AddAvailableCatalog() and use it in AddStdCatalog() 2023-10-02 19:21:48 +02:00
lists Replace some occurrences of wxUSE_STL with wxUSE_STD_CONTAINERS 2023-04-15 15:14:41 +01:00
log Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
longlong Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
mbconv Remove wxUSE_UNICODE checks as they're always true now 2022-10-27 19:43:30 +02:00
menu Replace wxScopedPtr with std::unique_ptr in the tests 2023-03-06 23:34:44 +01:00
misc Fix DynamicLibrary::Load() test for less common platforms 2023-08-24 02:49:31 +02:00
net Make wxSocket::Peek() work with UDP too 2023-06-05 01:49:41 +02:00
persistence Replace wxOVERRIDE and wxNOEXCEPT with override and noexcept 2022-10-15 18:10:45 +02:00
regex Remove wxUSE_UNICODE checks as they're always true now 2022-10-27 19:43:30 +02:00
rowheightcache Remove BCC-specific hdrstop pragma from everywhere 2020-10-12 21:58:37 +02:00
scopeguard Remove BCC-specific hdrstop pragma from everywhere 2020-10-12 21:58:37 +02:00
sizers Replace wxScopedPtr with std::unique_ptr in the tests 2023-03-06 23:34:44 +01:00
streams Update wxMemoryInputStream::Peek to set last read count. 2023-08-06 20:46:27 -04:00
strings Don't clobber std::string_view equality with char * 2023-09-06 02:44:11 +02:00
textfile Remove wxUSE_UNICODE checks as they're always true now 2022-10-27 19:43:30 +02:00
thread Stop using macro-based array in wxThread unit test 2023-03-13 01:17:23 +01:00
toplevel Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
uris Remove CppUnit boilerplate from wxURL unit tests 2023-05-18 00:10:28 +02:00
validators Still enforce validity on focus loss in numeric validators 2023-07-02 19:13:41 +01:00
weakref Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
window Replace wxScopedPtr with std::unique_ptr in the tests 2023-03-06 23:34:44 +01:00
xlocale Remove wxUSE_UNICODE checks as they're always true now 2022-10-27 19:43:30 +02:00
xml Replace wxScopedPtr with std::unique_ptr in the tests 2023-03-06 23:34:44 +01:00
allheaders.cpp Revert "Move Cygwin __USE_W32_SOCKETS definition to wxMSW-specific file" 2023-07-09 17:05:09 +02:00
allheaders.h Remove memory debugging/tracing support and all related options 2023-01-05 21:41:38 +01:00
asserthelper.cpp Simplify showing colour values in failing unit tests 2023-05-15 21:39:13 +01:00
asserthelper.h Simplify showing colour values in failing unit tests 2023-05-15 21:39:13 +01:00
descrip.mms Remove wxVector unit test 2022-10-11 00:48:00 +02:00
dummy.cpp
horse.ani
horse.bmp
horse.cur
horse.gif
horse.ico
horse.jpg
horse.pcx
horse.png
horse.pnm
horse.svg Add wxBitmapBundle::FromSVGFile() helper 2021-11-29 12:55:22 +00:00
horse.tga
horse.tif
horse.xpm
makefile.gcc Rebake after the previous commit 2023-07-29 18:13:29 +02:00
Makefile.in Rebake after the previous commit 2023-07-29 18:13:29 +02:00
makefile.vc Rebake after the previous commit 2023-07-29 18:13:29 +02:00
README.md Explain how to build the tests 2021-11-12 14:21:41 +01:00
runtests.bat Don't use "-t" option when running tests any longer 2017-11-02 01:53:29 +01:00
test.bkl Link with stc directly in the test bakefile 2023-07-29 16:01:33 +02:00
test.cpp Use wxSocketInitializer in the unit tests 2023-05-18 00:06:21 +02:00
test.vcxproj Revert all recent wxUSE_DPI_AWARE_MANIFEST-related changes 2023-08-25 00:03:47 +02:00
test.vcxproj.filters Remove wxVector unit test 2022-10-11 00:48:00 +02:00
test_gui.vcxproj Revert all recent wxUSE_DPI_AWARE_MANIFEST-related changes 2023-08-25 00:03:47 +02:00
test_gui.vcxproj.filters Execute automated tests for wxPropertyGrid 2023-01-30 17:28:17 +01:00
test_gui_vc14.sln Add wxSTC project to the GUI tests MSVS solution 2023-05-06 19:43:00 +01:00
test_gui_vc15.sln Add wxSTC project to the GUI tests MSVS solution 2023-05-06 19:43:00 +01:00
test_gui_vc16.sln Add wxSTC project to the GUI tests MSVS solution 2023-05-06 19:43:00 +01:00
test_vc14.sln Enable building the unit tests for x64 in MSVS solutions 2017-11-25 11:13:02 +01:00
test_vc15.sln Enable building the unit tests for x64 in MSVS solutions 2017-11-25 11:13:02 +01:00
test_vc16.sln Add MSVS 2019 solutions for the minimal sample and the tests 2021-08-24 17:12:06 +02:00
testableframe.cpp Use nullptr instead of NULL in the code and documentation 2022-10-18 01:25:25 +02:00
testableframe.h Use std::unordered_map<> in the GUI unit test code 2023-04-18 00:42:55 +01:00
testdata.conf Rename testdata.fc to testdata.conf 2021-12-10 17:26:49 +01:00
testdate.h Include testdate.h before catch.hpp in unit tests 2017-12-02 14:38:19 +01:00
testfile.h Factor out TempFile class and reuse it in other tests 2017-11-05 17:28:24 +01:00
testimage.h Stop using Catch::toString() 2022-10-18 18:39:13 +02:00
testprec.h Fix using colours, fonts etc in CATCH assert messages 2023-05-15 21:39:13 +01:00
testwindow.h Replace wxScopedPtr with std::unique_ptr in the tests 2023-03-06 23:34:44 +01:00
waitforpaint.h Simplify WaitForPaint::YieldUntilPainted() 2021-01-31 01:33:30 +01:00

Tests

This directory contains tests for the library and is mostly useful for the library developers. See the samples subdirectory for the examples that are more useful to the application developers using the library.

If you do work on the library itself and would like to modify an existing or add a new test, please see docs/contributing/how-to-write-unit-tests.md for more information.

This file also contains the instructions for running the tests if you'd just like to do it to confirm that the library works correctly.