// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 // GameKit #include "custom_test_flags.h" #include // GTest #include namespace TestExecutionSettings { CustomTestExecutionSettings Settings; } std::ptrdiff_t TestFileSystemUtils::CountFilesInDirectory(const std::string& path) { return std::count_if( boost::filesystem::recursive_directory_iterator(path), boost::filesystem::recursive_directory_iterator(), static_cast(boost::filesystem::is_regular_file)); } std::map TestFileSystemUtils::CountFilesInDirectories(const std::vector& directories) { std::map fileCountPerDir; for (const std::string& dir : directories) { fileCountPerDir[dir] = TestFileSystemUtils::CountFilesInDirectory(dir); } return fileCountPerDir; } size_t TestFileSystemUtils::DeleteDirectory(const std::string& path) { if (boost::filesystem::exists(path)) { return boost::filesystem::remove_all(path); } return 0; } void TestExecutionUtils::AbortOnFailureIfEnabled() { if (TestExecutionSettings::Settings.AbortOnFailure && ::testing::Test::HasFailure()) { abort(); } }