// Copyright 2015 PDFium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef TESTING_UTILS_PATH_SERVICE_H_ #define TESTING_UTILS_PATH_SERVICE_H_ #include <string> #ifdef _WIN32 #define PATH_SEPARATOR '\\' #else #define PATH_SEPARATOR '/' #endif // Get the various file directory and path information. class PathService { public: // Return true when the path ends with a path separator. static bool EndsWithSeparator(const std::string& path); // Retrieve the directory where executables run from. static bool GetExecutableDir(std::string* path); // Retrieve the root directory of the source tree. // Assume executables always run from out/<Debug|Release>/, the source // directory is two levels above the executable directory. static bool GetSourceDir(std::string* path); // Retrieve the test data directory where test files are stored. // Currently, the test dir is under <source_dir>/testing/resources/. static bool GetTestDataDir(std::string* path); // Get the full path for a test file under the test data directory. static bool GetTestFilePath(const std::string& file_name, std::string* path); }; #endif // TESTING_UTILS_PATH_SERVICE_H_