ORE Studio 0.0.4
Loading...
Searching...
No Matches
project_root.hpp
1/* -*- mode: c++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2 *
3 * Copyright (C) 2025 Marco Craveiro <marco.craveiro@gmail.com>
4 *
5 * This program is free software; you can redistribute it and/or modify it under
6 * the terms of the GNU General Public License as published by the Free Software
7 * Foundation; either version 3 of the License, or (at your option) any later
8 * version.
9 *
10 * This program is distributed in the hope that it will be useful, but WITHOUT
11 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License along with
15 * this program; if not, write to the Free Software Foundation, Inc., 51
16 * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 *
18 */
19#ifndef ORES_TESTING_PROJECT_ROOT_HPP
20#define ORES_TESTING_PROJECT_ROOT_HPP
21
22#include <filesystem>
23
24namespace ores::testing {
25
35public:
44 static std::filesystem::path get();
45
53 static std::filesystem::path resolve(const std::filesystem::path& relative_path);
54};
55
56}
57
58#endif
Testing infrastructure common to all test projects.
Definition database_helper.hpp:27
Provides access to project root directory for test resource location.
Definition project_root.hpp:34
static std::filesystem::path get()
Returns the absolute path to the project root directory.
Definition project_root.cpp:48
static std::filesystem::path resolve(const std::filesystem::path &relative_path)
Resolves a project-relative path to an absolute path.
Definition project_root.cpp:56