Commit Graph

1061 Commits

Author SHA1 Message Date
Max Kellermann
7b938b4d14 util/Exception: sanitize message strings
This should prevent leaking unsanitized strings from libraries.
2024-06-25 20:29:07 +02:00
Max Kellermann
381215fd73 *: use std::scoped_lock with implicit template parameter 2024-05-23 20:54:49 +02:00
Max Kellermann
131dcce0a1 playlist/Mapper: use Storage::OpenFile() 2024-05-17 12:54:08 +02:00
Max Kellermann
f578a1cb2b storage/Interface: add virtual method OpenFile()
This should replace most InputStream::Open() calls because it is a
chance to reuse existing resources (e.g. the NFS connection).  No such
optimization is implemented, currently (and the method is not yet used
by anybody).
2024-05-17 12:54:08 +02:00
Max Kellermann
5dd07ac040 test/run_storage: use the OptionParser class for command-line options
Introducing the option "--verbose".
2024-05-15 14:11:25 +02:00
Max Kellermann
ca8a2aeb7b test/run_storage: print a combined usage text for all commands 2024-05-15 11:17:30 +02:00
Max Kellermann
57fad1d4b2 test/run_storage: move initialization to class GlobalInit 2024-05-15 10:15:12 +02:00
Max Kellermann
34f7b38f39 input/InputStream: pass std::span<std::byte> to Read() 2024-05-13 12:28:40 +02:00
Max Kellermann
d6adc59265 test/run_storage: use FormatISO8601() 2024-05-13 10:37:33 +02:00
Max Kellermann
c154dc00d7 test/run_storage: use StringIsEqual() 2024-05-13 10:37:25 +02:00
Max Kellermann
3813433e02 test/net/TestLocalSocketAddress: add unit tests for GetLocalRaw() 2024-05-06 12:54:45 +02:00
Max Kellermann
73509fc189 net/LocalSocketAddress: new class wrapping struct sockaddr_un 2024-05-06 12:54:45 +02:00
Max Kellermann
c8ed28e9c6 test/util/TestIntrusiveList: add test for clear_and_dispose() with modifying disposer 2024-05-06 12:49:04 +02:00
Max Kellermann
0c1ecc96a8 *: let libfmt quote strings 2024-04-16 11:50:18 +02:00
Max Kellermann
3cf0896998 test/util/TestIntrusiveTreeSet: add test with large randomized tree, erasing random elements
Test fails currently due to two bugs in the red-black tree
implementation.
2024-04-10 13:35:24 +02:00
Max Kellermann
e0a53d4747 util/IntrusiveTreeSet: add debug method Check()
Only for the unit test.
2024-04-10 13:35:21 +02:00
Max Kellermann
99da022775 util/IntrusiveSortedList: remove unused class 2024-04-03 21:31:08 +02:00
Max Kellermann
5a0bad3b2f util/IntrusiveTreeSet: new class 2024-04-03 21:29:34 +02:00
Max Kellermann
6a99f20828 util/IntrusiveHashSet: add concept checks to *Operators
This requires adding another template argument and reordering the others.
2024-04-03 21:27:37 +02:00
Max Kellermann
74125c0922 test/meson.build: suppress compiler warnings in GTest headers 2024-01-18 18:42:56 +01:00
Max Kellermann
e4cc89b2d9 Merge branch 'jg' of https://github.com/neheb/MPD 2024-01-13 22:38:34 +01:00
Max Kellermann
14dea04ee9 test/util: use unsigned integer literals for -Wsign-compare 2024-01-13 22:33:23 +01:00
Rosen Penev
8e123e7fc9 test: archive: fix compilation with Windows
NarrowPath is needed.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-01-04 14:22:25 -08:00
Rosen Penev
fb9194b537 tests: fix ChromaPrint test on Windows
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-01-04 14:22:24 -08:00
Max Kellermann
4eefc2e47c test/DumpDatabase: add "URI" parameter 2024-01-04 15:37:10 +01:00
Max Kellermann
7c13666226 test/DumpDatabase: remove the "PLUGIN" parameter, load from config file 2024-01-04 15:36:18 +01:00
Max Kellermann
4ed8313954 test/DumpDatabase: use libfmt 2024-01-04 15:32:26 +01:00
Rosen Penev
13202bfce4 test: neighbor_explorer: fix compilation on WIN32
Need NarrowPath. Matches what is done in other tests.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2023-12-31 15:38:49 -08:00
Max Kellermann
833ca1e350 test/dump_rva2: fix TCHAR/char confusion on Windows 2023-12-22 18:05:40 +01:00
Max Kellermann
a888b3a707 decoder/plugins/meson.build: add missing dependency to libid3tag 2023-12-22 18:03:47 +01:00
Max Kellermann
58fc857a2d tag/IcyMetadataParser: pass std::string_view to icy_parse_tag() 2023-12-20 20:18:39 +01:00
Max Kellermann
e443ee357a tag/IcyMetadataParser: do not null-terminate strings in icy_parse_tag()
Just pass std::string_views into the unmodified buffer to
icy_parse_tag_item().
2023-12-20 19:58:35 +01:00
Max Kellermann
a5d7f5e1fa client/Client: add interface IClient
This allows detangling dependencies and fixes a linker problem in
test/test_translate_song.cxx.
2023-11-26 08:11:06 +01:00
Max Kellermann
08a5768764 fs/io/TextFile: split into class FileLineReader and AutoGunzipFileLineReader
Detangle dependencies.
2023-11-25 22:50:32 +01:00
Max Kellermann
3d2bd08132 test/meson.build: eliminate variable gtest_main_dep 2023-11-21 20:46:10 +01:00
Max Kellermann
1259fdc2e3 test/meson.build: re-enable various compiler warnings with GTest 2023-11-21 20:46:10 +01:00
Max Kellermann
a564b7eedb test/test_translate_song: remove unused Log() symbol 2023-11-21 20:46:10 +01:00
Max Kellermann
10940da381 util/Intrusive{List,HashSet}: add "tag" for base hooks 2023-11-02 10:48:46 +01:00
Max Kellermann
7ccc4ddf0d io/Reader: use std::span 2023-10-07 08:44:42 +02:00
Max Kellermann
5ddddbb16f test/util/TestIntrusiveForwardList: add push_back() test 2023-10-04 16:50:38 +02:00
Max Kellermann
cad35a83fb io/FileDescriptor: add Read()/Write() overloads with std::span 2023-09-27 11:14:23 +02:00
Max Kellermann
09a2da89a2 io/FileDescriptor: pass std::span to Full{Read,Write}() 2023-09-27 10:14:02 +02:00
Max Kellermann
2bb4c7cfa7 test/meson.build: add missing libfmt dependency
Should have been part of 64647edbe1
2023-09-26 10:47:52 +02:00
Max Kellermann
64647edbe1 lib/fmt/SocketAddressFormatter: new library 2023-09-19 11:22:39 +02:00
Max Kellermann
64e91d6eb7 test/util/TestIntrusiveForwardList: add constant_time_size test 2023-09-16 22:39:03 +02:00
Max Kellermann
f448bfd3f3 util/IntrusiveForwardList: add option cache_last 2023-09-16 22:39:03 +02:00
Max Kellermann
1f495efb46 test/LoadDatabase: ignore tag/charset mismatches
This program shouldn't fail just because the configuration doesn't
match - it has no configuration, it's just a dumb test program.
2023-09-07 09:54:03 +02:00
Max Kellermann
38d8359384 test/LoadDatabase: new test program (for benchmarking the database loader) 2023-09-06 16:17:24 +02:00
Max Kellermann
78801f303e test/util/TestIntrusiveHashSet: add test for remove_and_dispose_key() 2023-08-03 20:44:52 +02:00
Max Kellermann
2cd5f4cd3e util/IntrusiveHashSet: replace template parameters Hash/Equal with a single one
Preparing to add a key extraction function.  Without this "Operators"
template parameter, we'd have even more template parameters, and that
parameter list would grow too complex.  Better wrap it in one single
template that contains all operators.

This is an API change which all callers need to adjust to, but it will
be worth it.
2023-08-03 20:44:14 +02:00