Line data Source code
1 : // SPDX-FileCopyrightText: 2024 Pairinteraction Developers 2 : // SPDX-License-Identifier: LGPL-3.0-or-later 3 : 4 : #include "pairinteraction/tools/run_unit_tests.hpp" 5 : #include "pairinteraction/tools/setup.hpp" 6 : #include "pairinteraction/utils/args.hpp" 7 : 8 : #include <filesystem> 9 : #include <vector> 10 : 11 1 : int main(int argc, char **argv) { 12 1 : pairinteraction::setup(); 13 : 14 1 : std::filesystem::path database_dir; 15 1 : bool download_missing = false; 16 1 : std::vector<char *> args; 17 1 : args.reserve(argc); 18 : 19 5 : for (int i = 0; i < argc; ++i) { 20 4 : bool found = pairinteraction::args::parse_download_missing(i, argc, argv, download_missing); 21 4 : if (!found) { 22 4 : found = pairinteraction::args::parse_database_dir(i, argc, argv, database_dir); 23 : } 24 4 : if (!found) { 25 3 : args.push_back(argv[i]); 26 : } 27 : } 28 : 29 2 : return pairinteraction::run_unit_tests(static_cast<int>(args.size()), args.data(), 30 1 : download_missing, true, database_dir); 31 1 : }