diff --git a/CMakeLists.txt b/CMakeLists.txt index 869df327..7f7e4ca2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -444,12 +444,14 @@ endif() if(MSVC) # Turn off permissive mode to be more standards-compliant and avoid compiler errors. - target_compile_options(loot PRIVATE "/permissive-") - target_compile_options(libloot_tests PRIVATE "/permissive-") + target_compile_options(loot PRIVATE "/permissive-" "/W4") + target_compile_options(libloot_tests PRIVATE "/permissive-" "/W4") # Set /bigobj to allow building Debug and RelWithDebInfo tests target_compile_options(libloot_internals_tests PRIVATE - "/permissive-" "$<$,$>:/bigobj>") + "/permissive-" + "/W4" + "$<$,$>:/bigobj>") set(LOOT_LIBS version diff --git a/src/api/api.cpp b/src/api/api.cpp index 5aa7d14e..93e379dc 100644 --- a/src/api/api.cpp +++ b/src/api/api.cpp @@ -65,7 +65,7 @@ LOOT_API void SetLoggingCallback( LOOT_API bool IsCompatible(const unsigned int versionMajor, const unsigned int versionMinor, - const unsigned int versionPatch) { + const unsigned int) { if (versionMajor > 0) return versionMajor == loot::LootVersion::major; else @@ -92,7 +92,8 @@ LOOT_API std::shared_ptr CreateGameHandle( auto resolvedGameLocalPath = ResolvePath(gameLocalPath); if (!gameLocalPath.empty() && !fs::is_directory(resolvedGameLocalPath)) - throw std::invalid_argument("Given game local path \"" + gameLocalPath.u8string() + + throw std::invalid_argument("Given game local path \"" + + gameLocalPath.u8string() + "\" does not resolve to a valid directory."); return std::make_shared(game, resolvedGamePath, resolvedGameLocalPath); diff --git a/src/api/error_categories.cpp b/src/api/error_categories.cpp index 8ca5fd75..252a72f4 100644 --- a/src/api/error_categories.cpp +++ b/src/api/error_categories.cpp @@ -22,19 +22,18 @@ . */ -#include - #include "loot/exception/error_categories.h" +#include + namespace loot { namespace detail { class libloadorder_category : public std::error_category { virtual const char* name() const noexcept { return "libloadorder"; } - virtual std::string message(int ev) const { return "Libloadorder error"; } + virtual std::string message(int) const { return "Libloadorder error"; } - virtual bool equivalent(const std::error_code& code, int condition) const - noexcept { + virtual bool equivalent(const std::error_code& code) const noexcept { return code.category().name() == name(); } }; diff --git a/src/api/plugin.cpp b/src/api/plugin.cpp index 72ef0928..dac9cafd 100644 --- a/src/api/plugin.cpp +++ b/src/api/plugin.cpp @@ -24,9 +24,8 @@ #include "api/plugin.h" -#include - #include +#include #include "api/game/game.h" #include "api/helpers/crc.h" @@ -233,10 +232,10 @@ bool Plugin::IsValid(const GameType gameType, // Check that the file has a valid extension. if (hasPluginFileExtension(pluginPath.filename().u8string(), gameType)) { bool isValid; - int returnCode = esp_plugin_is_valid(GetEspluginGameId(gameType), - pluginPath.u8string().c_str(), - true, - &isValid); + auto returnCode = esp_plugin_is_valid(GetEspluginGameId(gameType), + pluginPath.u8string().c_str(), + true, + &isValid); if (returnCode != ESP_OK || !isValid) { // Try adding .ghost extension. @@ -270,7 +269,7 @@ void Plugin::Load(const std::filesystem::path& path, GameType gameType, bool headerOnly) { ::Plugin* plugin; - int ret = esp_plugin_new( + auto ret = esp_plugin_new( &plugin, GetEspluginGameId(gameType), path.u8string().c_str()); if (ret != ESP_OK) { throw FileAccessError(path.u8string() + @@ -428,11 +427,10 @@ bool hasPluginFileExtension(std::string filename, GameType gameType) { } bool isEspOrEsm = boost::iends_with(filename, ".esp") || - boost::iends_with(filename, ".esm"); - bool isEsl = - (gameType == GameType::fo4 || gameType == GameType::fo4vr || - gameType == GameType::tes5se || gameType == GameType::tes5vr) && - boost::iends_with(filename, ".esl"); + boost::iends_with(filename, ".esm"); + bool isEsl = (gameType == GameType::fo4 || gameType == GameType::fo4vr || + gameType == GameType::tes5se || gameType == GameType::tes5vr) && + boost::iends_with(filename, ".esl"); return isEspOrEsm || isEsl; } diff --git a/src/tests/api/interface/main.cpp b/src/tests/api/interface/main.cpp index f468c0d8..669889cb 100644 --- a/src/tests/api/interface/main.cpp +++ b/src/tests/api/interface/main.cpp @@ -37,12 +37,12 @@ int main(int argc, char **argv) { namespace loot { namespace test { -void testLoggingCallback(LogLevel level, const char * message) { +void testLoggingCallback(LogLevel, const char *) { // Do nothing. } struct TestLogger { - void callback(LogLevel level, const char * message) { + void callback(LogLevel, const char *message) { loggedMessages += std::string(message); } @@ -55,9 +55,8 @@ TEST(SetLoggingCallback, shouldAcceptAFreeFunction) { try { CreateGameHandle(GameType::tes4, "dummy"); FAIL(); - } - catch (...) { - //SetLoggingCallback([](LogLevel, const char *) {}); + } catch (...) { + SetLoggingCallback([](LogLevel, const char *) {}); } } @@ -98,7 +97,7 @@ TEST(SetLoggingCallback, shouldNotBreakLoggingIfPassedMemberFunctionGoesOutOfSco TEST(SetLoggingCallback, shouldAcceptALambdaFunction) { std::string loggedMessages; - auto callback = [&](LogLevel level, const char *string) { + auto callback = [&](LogLevel, const char *string) { loggedMessages += std::string(string); }; SetLoggingCallback(callback); @@ -119,7 +118,7 @@ TEST(SetLoggingCallback, shouldAcceptALambdaFunction) { TEST(SetLoggingCallback, shouldNotBreakLoggingIfPassedLambdaFunctionGoesOutOfScope) { std::string loggedMessages; { - SetLoggingCallback([&](LogLevel level, const char *string) { + SetLoggingCallback([&](LogLevel, const char *string) { loggedMessages += std::string(string); }); } diff --git a/src/tests/api/internals/main.cpp b/src/tests/api/internals/main.cpp index e0deec58..ff9ea1bf 100644 --- a/src/tests/api/internals/main.cpp +++ b/src/tests/api/internals/main.cpp @@ -85,8 +85,9 @@ TEST(Filesystem, EXPECT_NE(utf16, path.u16string()); } -TEST(Filesystem, - pathStringAndLocaleConstructorDoesNotConvertCharacterEncodingFromUtf8WithClassicLocale) { +TEST( + Filesystem, + pathStringAndLocaleConstructorDoesNotConvertCharacterEncodingFromUtf8WithClassicLocale) { std::string utf8 = u8"Andr\u00E9_settings.toml"; std::u16string utf16 = u"Andr\u00E9_settings.toml"; @@ -101,8 +102,7 @@ TEST(Filesystem, EXPECT_NE(utf16, path.u16string()); } #else -TEST(Filesystem, - pathStringConstructorUsesNativeEncodingOfUtf8) { +TEST(Filesystem, pathStringConstructorUsesNativeEncodingOfUtf8) { std::string utf8 = u8"Andr\u00E9_settings.toml"; std::u16string utf16 = u"Andr\u00E9_settings.toml"; @@ -117,7 +117,7 @@ TEST(Filesystem, } TEST(Filesystem, - pathStringAndLocaleConstructorUsesNativeEncodingOfUtf8WithCUtf8Locale) { + pathStringAndLocaleConstructorUsesNativeEncodingOfUtf8WithCUtf8Locale) { std::string utf8 = u8"Andr\u00E9_settings.toml"; std::u16string utf16 = u"Andr\u00E9_settings.toml"; @@ -184,7 +184,8 @@ TEST(Filesystem, equivalentShouldRequireThatBothPathsExist) { auto upper = std::filesystem::path("LICENSE"); auto lower = std::filesystem::path("license2"); - EXPECT_THROW(std::filesystem::equivalent(lower, upper), std::filesystem::filesystem_error); + EXPECT_THROW(std::ignore = std::filesystem::equivalent(lower, upper), + std::filesystem::filesystem_error); } TEST(Filesystem, equivalentShouldBeCaseInsensitive) { @@ -194,11 +195,16 @@ TEST(Filesystem, equivalentShouldBeCaseInsensitive) { EXPECT_TRUE(std::filesystem::equivalent(lower, upper)); } -TEST(Filesystem, equivalentCannotHandleCharactersThatAreUnrepresentableInTheSystemCodePage) { - auto path1 = std::filesystem::u8path(u8"\u2551\u00BB\u00C1\u2510\u2557\u00FE\u00C3\u00CE.txt"); - auto path2 = std::filesystem::u8path(u8"\u2551\u00BB\u00C1\u2510\u2557\u00FE\u00C3\u00CE.txt"); +TEST( + Filesystem, + equivalentCannotHandleCharactersThatAreUnrepresentableInTheSystemCodePage) { + auto path1 = std::filesystem::u8path( + u8"\u2551\u00BB\u00C1\u2510\u2557\u00FE\u00C3\u00CE.txt"); + auto path2 = std::filesystem::u8path( + u8"\u2551\u00BB\u00C1\u2510\u2557\u00FE\u00C3\u00CE.txt"); - EXPECT_THROW(std::filesystem::equivalent(path1, path2), std::system_error); + EXPECT_THROW(std::ignore = std::filesystem::equivalent(path1, path2), + std::system_error); } #else TEST(Filesystem, equivalentShouldNotRequireThatBothPathsExist) { diff --git a/src/tests/api/internals/metadata/plugin_cleaning_data_test.h b/src/tests/api/internals/metadata/plugin_cleaning_data_test.h index c20d8327..5eb49c5e 100644 --- a/src/tests/api/internals/metadata/plugin_cleaning_data_test.h +++ b/src/tests/api/internals/metadata/plugin_cleaning_data_test.h @@ -25,10 +25,9 @@ along with LOOT. If not, see #ifndef LOOT_TESTS_API_INTERNALS_METADATA_PLUGIN_CLEANING_DATA #define LOOT_TESTS_API_INTERNALS_METADATA_PLUGIN_CLEANING_DATA -#include "loot/metadata/plugin_cleaning_data.h" - #include "api/game/game.h" #include "api/metadata/yaml/plugin_cleaning_data.h" +#include "loot/metadata/plugin_cleaning_data.h" #include "tests/common_game_test_fixture.h" namespace loot { @@ -46,26 +45,26 @@ protected: // Pass an empty first argument, as it's a prefix for the test instantation, // but we only have the one so no prefix is necessary. INSTANTIATE_TEST_SUITE_P(, - PluginCleaningDataTest, - ::testing::Values(GameType::tes4)); + PluginCleaningDataTest, + ::testing::Values(GameType::tes4)); TEST_P(PluginCleaningDataTest, defaultConstructorShouldLeaveAllCountsAtZeroAndTheUtilityStringEmpty) { PluginCleaningData info; - EXPECT_EQ(0, info.GetCRC()); - EXPECT_EQ(0, info.GetITMCount()); - EXPECT_EQ(0, info.GetDeletedReferenceCount()); - EXPECT_EQ(0, info.GetDeletedNavmeshCount()); + EXPECT_EQ(0u, info.GetCRC()); + EXPECT_EQ(0u, info.GetITMCount()); + EXPECT_EQ(0u, info.GetDeletedReferenceCount()); + EXPECT_EQ(0u, info.GetDeletedNavmeshCount()); EXPECT_TRUE(info.GetCleaningUtility().empty()); EXPECT_TRUE(info.GetDetail().empty()); } TEST_P(PluginCleaningDataTest, contentConstructorShouldStoreAllGivenData) { PluginCleaningData info(0x12345678, "cleaner", info_, 2, 10, 30); - EXPECT_EQ(0x12345678, info.GetCRC()); - EXPECT_EQ(2, info.GetITMCount()); - EXPECT_EQ(10, info.GetDeletedReferenceCount()); - EXPECT_EQ(30, info.GetDeletedNavmeshCount()); + EXPECT_EQ(0x12345678u, info.GetCRC()); + EXPECT_EQ(2u, info.GetITMCount()); + EXPECT_EQ(10u, info.GetDeletedReferenceCount()); + EXPECT_EQ(30u, info.GetDeletedNavmeshCount()); EXPECT_EQ("cleaner", info.GetCleaningUtility()); EXPECT_EQ(info_, info.GetDetail()); } @@ -322,7 +321,8 @@ TEST_P(PluginCleaningDataTest, chooseDetailShouldCreateADefaultContentObjectIfNoneExists) { PluginCleaningData dirtyInfo( 0xDEADBEEF, "cleaner", std::vector(), 2, 10, 30); - EXPECT_FALSE(dirtyInfo.ChooseDetail(MessageContent::defaultLanguage).has_value()); + EXPECT_FALSE( + dirtyInfo.ChooseDetail(MessageContent::defaultLanguage).has_value()); } TEST_P(PluginCleaningDataTest, @@ -385,7 +385,7 @@ TEST_P(PluginCleaningDataTest, encodingAsYamlShouldOmitAllZeroCountFields) { YAML::Node node; node = info; - EXPECT_EQ(0x12345678, node["crc"].as()); + EXPECT_EQ(0x12345678u, node["crc"].as()); EXPECT_EQ("cleaner", node["util"].as()); EXPECT_EQ(info_, node["detail"].as>()); EXPECT_FALSE(node["itm"]); @@ -399,12 +399,12 @@ TEST_P(PluginCleaningDataTest, YAML::Node node; node = info; - EXPECT_EQ(0x12345678, node["crc"].as()); + EXPECT_EQ(0x12345678u, node["crc"].as()); EXPECT_EQ("cleaner", node["util"].as()); EXPECT_EQ(info_, node["detail"].as>()); - EXPECT_EQ(2, node["itm"].as()); - EXPECT_EQ(10, node["udr"].as()); - EXPECT_EQ(30, node["nav"].as()); + EXPECT_EQ(2u, node["itm"].as()); + EXPECT_EQ(10u, node["udr"].as()); + EXPECT_EQ(30u, node["nav"].as()); } TEST_P(PluginCleaningDataTest, @@ -412,24 +412,25 @@ TEST_P(PluginCleaningDataTest, YAML::Node node = YAML::Load("{crc: 0x12345678, util: cleaner}"); PluginCleaningData info = node.as(); - EXPECT_EQ(0x12345678, info.GetCRC()); + EXPECT_EQ(0x12345678u, info.GetCRC()); EXPECT_TRUE(info.GetDetail().empty()); - EXPECT_EQ(0, info.GetITMCount()); - EXPECT_EQ(0, info.GetDeletedReferenceCount()); - EXPECT_EQ(0, info.GetDeletedNavmeshCount()); + EXPECT_EQ(0u, info.GetITMCount()); + EXPECT_EQ(0u, info.GetDeletedReferenceCount()); + EXPECT_EQ(0u, info.GetDeletedNavmeshCount()); EXPECT_EQ("cleaner", info.GetCleaningUtility()); } TEST_P(PluginCleaningDataTest, decodingFromYamlShouldStoreAllNonZeroCounts) { YAML::Node node = YAML::Load( - "{crc: 0x12345678, util: cleaner, detail: info, itm: 2, udr: 10, nav: 30}"); + "{crc: 0x12345678, util: cleaner, detail: info, itm: 2, udr: 10, nav: " + "30}"); PluginCleaningData info = node.as(); - EXPECT_EQ(0x12345678, info.GetCRC()); + EXPECT_EQ(0x12345678u, info.GetCRC()); EXPECT_EQ(info_, info.GetDetail()); - EXPECT_EQ(2, info.GetITMCount()); - EXPECT_EQ(10, info.GetDeletedReferenceCount()); - EXPECT_EQ(30, info.GetDeletedNavmeshCount()); + EXPECT_EQ(2u, info.GetITMCount()); + EXPECT_EQ(10u, info.GetDeletedReferenceCount()); + EXPECT_EQ(30u, info.GetDeletedNavmeshCount()); EXPECT_EQ("cleaner", info.GetCleaningUtility()); } diff --git a/src/tests/api/internals/plugin_test.h b/src/tests/api/internals/plugin_test.h index 45529da0..90845ee0 100644 --- a/src/tests/api/internals/plugin_test.h +++ b/src/tests/api/internals/plugin_test.h @@ -25,9 +25,8 @@ along with LOOT. If not, see #ifndef LOOT_TESTS_API_INTERNALS_PLUGIN_TEST #define LOOT_TESTS_API_INTERNALS_PLUGIN_TEST -#include "api/plugin.h" - #include "api/game/game.h" +#include "api/plugin.h" #include "tests/common_game_test_fixture.h" namespace loot { @@ -153,20 +152,20 @@ public: bool IsValidAsLightPlugin() const { return false; } bool IsEmpty() const { return false; } bool LoadsArchive() const { return false; } - bool DoFormIDsOverlap(const PluginInterface& plugin) const { return true; } + bool DoFormIDsOverlap(const PluginInterface&) const { return true; } }; // Pass an empty first argument, as it's a prefix for the test instantation, // but we only have the one so no prefix is necessary. INSTANTIATE_TEST_SUITE_P(, - PluginTest, - ::testing::Values(GameType::tes3, - GameType::tes4, - GameType::tes5, - GameType::fo3, - GameType::fonv, - GameType::fo4, - GameType::tes5se)); + PluginTest, + ::testing::Values(GameType::tes3, + GameType::tes4, + GameType::tes5, + GameType::fo3, + GameType::fonv, + GameType::fo4, + GameType::tes5se)); TEST_P(PluginTest, loadingShouldHandleNonAsciiFilenamesCorrectly) { Plugin plugin(game_.Type(), @@ -548,11 +547,11 @@ TEST_P(PluginTest, getRecordAndGroupCountShouldReturnTheHeaderFieldValue) { game_.Type(), game_.GetCache(), game_.DataPath() / blankEsm, true); if (GetParam() == GameType::tes3) { - EXPECT_EQ(10, plugin.GetRecordAndGroupCount()); + EXPECT_EQ(10u, plugin.GetRecordAndGroupCount()); } else if (GetParam() == GameType::tes4) { - EXPECT_EQ(14, plugin.GetRecordAndGroupCount()); + EXPECT_EQ(14u, plugin.GetRecordAndGroupCount()); } else { - EXPECT_EQ(15, plugin.GetRecordAndGroupCount()); + EXPECT_EQ(15u, plugin.GetRecordAndGroupCount()); } } diff --git a/src/tests/api/internals/sorting/plugin_graph_test.h b/src/tests/api/internals/sorting/plugin_graph_test.h index b5175b8e..4c561ffc 100644 --- a/src/tests/api/internals/sorting/plugin_graph_test.h +++ b/src/tests/api/internals/sorting/plugin_graph_test.h @@ -22,116 +22,16 @@ along with LOOT. If not, see . */ -#ifndef LOOT_TESTS_API_INTERNALS_SORTING_PLUGIN_SORTER_TEST -#define LOOT_TESTS_API_INTERNALS_SORTING_PLUGIN_SORTER_TEST +#ifndef LOOT_TESTS_API_INTERNALS_SORTING_PLUGIN_GRAPH_TEST +#define LOOT_TESTS_API_INTERNALS_SORTING_PLUGIN_GRAPH_TEST + +#include #include "api/sorting/plugin_graph.h" -#include "loot/exception/cyclic_interaction_error.h" -#include "loot/exception/undefined_group_error.h" -#include "tests/common_game_test_fixture.h" - namespace loot { namespace test { -class PluginGraphTest : public CommonGameTestFixture { -protected: - PluginGraphTest() : - game_(GetParam(), dataPath.parent_path(), localPath), - masterlistPath_(metadataFilesPath / "userlist.yaml"), - cccPath_(dataPath.parent_path() / getCCCFilename()), - blankEslEsp("Blank.esl.esp") {} - - void loadInstalledPlugins(Game &game_, bool headersOnly) { - std::vector plugins({ - masterFile, - blankEsm, - blankDifferentEsm, - blankMasterDependentEsm, - blankDifferentMasterDependentEsm, - blankEsp, - blankDifferentEsp, - blankMasterDependentEsp, - blankDifferentMasterDependentEsp, - blankPluginDependentEsp, - blankDifferentPluginDependentEsp, - }); - - if (GetParam() == GameType::fo4 || GetParam() == GameType::tes5se) { - plugins.push_back(blankEsl); - - if (std::filesystem::exists(dataPath / blankEslEsp)) { - plugins.push_back(blankEslEsp); - } - } - - game_.IdentifyMainMasterFile(masterFile); - game_.LoadCurrentLoadOrderState(); - game_.LoadPlugins(plugins, headersOnly); - } - - void GenerateMasterlist() { - using std::endl; - - std::ofstream masterlist(masterlistPath_); - masterlist << "groups:" << endl - << " - name: earliest" << endl - << " - name: earlier" << endl - << " after:" << endl - << " - earliest" << endl - << " - name: default" << endl - << " after:" << endl - << " - earlier" << endl - << " - name: group1" << endl - << " - name: group2" << endl - << " after:" << endl - << " - group1" << endl - << " - name: group3" << endl - << " after:" << endl - << " - group2" << endl - << " - name: group4" << endl - << " after:" << endl - << " - default" << endl; - - masterlist.close(); - } - - std::string getCCCFilename() { - if (GetParam() == GameType::fo4) { - return "Fallout4.ccc"; - } else { - // Not every game has a .ccc file, but Skyrim SE does, so just assume - // that. - return "Skyrim.ccc"; - } - } - - void GenerateCCCFile() { - using std::endl; - - if (GetParam() == GameType::fo4) { - std::ofstream ccc(cccPath_); - ccc << blankDifferentEsm << endl - << blankDifferentMasterDependentEsm << endl; - - ccc.close(); - } - } - - Game game_; - const std::string blankEslEsp; - const std::filesystem::path masterlistPath_; - const std::filesystem::path cccPath_; -}; - -// Pass an empty first argument, as it's a prefix for the test instantation, -// but we only have the one so no prefix is necessary. -INSTANTIATE_TEST_SUITE_P(, - PluginGraphTest, - ::testing::Values(GameType::tes4, - GameType::tes5, - GameType::tes5se)); - -TEST_P(PluginGraphTest, topologicalSortWithNoLoadedPluginsShouldReturnAnEmptyList) { +TEST(PluginGraph, topologicalSortWithNoLoadedPluginsShouldReturnAnEmptyList) { PluginGraph graph; std::vector sorted = graph.TopologicalSort(); diff --git a/src/tests/api/internals/sorting/plugin_sort_test.h b/src/tests/api/internals/sorting/plugin_sort_test.h index 5d6da7e8..da28dd4e 100644 --- a/src/tests/api/internals/sorting/plugin_sort_test.h +++ b/src/tests/api/internals/sorting/plugin_sort_test.h @@ -41,7 +41,7 @@ protected: cccPath_(dataPath.parent_path() / getCCCFilename()), blankEslEsp("Blank.esl.esp") {} - void loadInstalledPlugins(Game &game_, bool headersOnly) { + void loadInstalledPlugins(Game &game, bool headersOnly) { std::vector plugins({ masterFile, blankEsm, @@ -64,9 +64,9 @@ protected: } } - game_.IdentifyMainMasterFile(masterFile); - game_.LoadCurrentLoadOrderState(); - game_.LoadPlugins(plugins, headersOnly); + game.IdentifyMainMasterFile(masterFile); + game.LoadCurrentLoadOrderState(); + game.LoadPlugins(plugins, headersOnly); } void GenerateMasterlist() { diff --git a/src/tests/api/internals/sorting/plugin_sorting_data_test.h b/src/tests/api/internals/sorting/plugin_sorting_data_test.h index 1d2d3ecd..254608d9 100644 --- a/src/tests/api/internals/sorting/plugin_sorting_data_test.h +++ b/src/tests/api/internals/sorting/plugin_sorting_data_test.h @@ -26,7 +26,6 @@ along with LOOT. If not, see #define LOOT_TESTS_API_INTERNALS_SORTING_PLUGIN_SORTING_DATA_TEST #include "api/sorting/plugin_sorting_data.h" - #include "tests/common_game_test_fixture.h" namespace loot { @@ -37,7 +36,7 @@ protected: game_(GetParam(), dataPath.parent_path(), localPath), blankEslEsp("Blank.esl.esp") {} - void loadInstalledPlugins(Game &game_, bool headersOnly) { + void loadInstalledPlugins(Game &game, bool headersOnly) { std::vector plugins({ masterFile, blankEsm, @@ -60,9 +59,9 @@ protected: } } - game_.IdentifyMainMasterFile(masterFile); - game_.LoadCurrentLoadOrderState(); - game_.LoadPlugins(plugins, headersOnly); + game.IdentifyMainMasterFile(masterFile); + game.LoadCurrentLoadOrderState(); + game.LoadPlugins(plugins, headersOnly); } Game game_; @@ -72,13 +71,12 @@ protected: // Pass an empty first argument, as it's a prefix for the test instantation, // but we only have the one so no prefix is necessary. INSTANTIATE_TEST_SUITE_P(, - PluginSortingDataTest, - ::testing::Values(GameType::tes3, - GameType::tes4, - GameType::fo4)); + PluginSortingDataTest, + ::testing::Values(GameType::tes3, + GameType::tes4, + GameType::fo4)); -TEST_P(PluginSortingDataTest, - lightFlaggedEspFilesShouldNotBeTreatedAsMasters) { +TEST_P(PluginSortingDataTest, lightFlaggedEspFilesShouldNotBeTreatedAsMasters) { if (GetParam() == GameType::fo4 || GetParam() == GameType::tes5se) { ASSERT_NO_THROW( std::filesystem::copy(dataPath / blankEsl, dataPath / blankEslEsp)); @@ -140,8 +138,9 @@ TEST_P(PluginSortingDataTest, EXPECT_EQ(4, plugin.NumOverrideFormIDs()); } -TEST_P(PluginSortingDataTest, - constructorShouldUseTotalRecordCountAsOverrideFormIdCountForTes3PluginWithAMasterThatIsNotLoaded) { +TEST_P( + PluginSortingDataTest, + constructorShouldUseTotalRecordCountAsOverrideFormIdCountForTes3PluginWithAMasterThatIsNotLoaded) { if (GetParam() != GameType::tes3) { return; }