test/LoadDatabase: new test program (for benchmarking the database loader)
This commit is contained in:
parent
2c01e79b47
commit
38d8359384
|
@ -0,0 +1,30 @@
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
// Copyright The Music Player Daemon Project
|
||||||
|
|
||||||
|
#include "config.h"
|
||||||
|
#include "db/plugins/simple/DatabaseSave.hxx"
|
||||||
|
#include "db/plugins/simple/Directory.hxx"
|
||||||
|
#include "fs/Path.hxx"
|
||||||
|
#include "fs/NarrowPath.hxx"
|
||||||
|
#include "fs/io/TextFile.hxx"
|
||||||
|
#include "util/PrintException.hxx"
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char **argv)
|
||||||
|
try {
|
||||||
|
if (argc != 2) {
|
||||||
|
fprintf(stderr, "Usage: LoadDatabase PATH\n");
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
|
const FromNarrowPath db_path = argv[1];
|
||||||
|
|
||||||
|
Directory root{{}, nullptr};
|
||||||
|
TextFile line_reader{db_path};
|
||||||
|
db_load_internal(line_reader, root);
|
||||||
|
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
} catch (...) {
|
||||||
|
PrintException(std::current_exception());
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
}
|
|
@ -266,6 +266,21 @@ if enable_database
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
executable(
|
||||||
|
'LoadDatabase',
|
||||||
|
'LoadDatabase.cxx',
|
||||||
|
'../src/db/PlaylistVector.cxx',
|
||||||
|
'../src/SongSave.cxx',
|
||||||
|
'../src/TagSave.cxx',
|
||||||
|
include_directories: inc,
|
||||||
|
dependencies: [
|
||||||
|
fmt_dep,
|
||||||
|
pcm_basic_dep,
|
||||||
|
song_dep,
|
||||||
|
db_plugins_dep,
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
test(
|
test(
|
||||||
'test_translate_song',
|
'test_translate_song',
|
||||||
executable(
|
executable(
|
||||||
|
|
Loading…
Reference in New Issue