Split up DatabaseInterface::LoadLists()

This commit is contained in:
Oliver Hamlet
2025-04-04 19:10:13 +01:00
parent 3b47e4ac38
commit bdb76fb546
5 changed files with 157 additions and 131 deletions
+25 -10
View File
@@ -46,26 +46,41 @@ public:
*/
/**
* @brief Loads the masterlist, userlist and masterlist prelude from the
* paths specified.
* @brief Loads the masterlist from the path specified.
* @details Can be called multiple times, each time replacing the
* previously-loaded data.
* @param masterlist_path
* The relative or absolute path to the masterlist file that should be
* loaded.
* @param userlist_path
* The relative or absolute path to the userlist file that should be
* loaded, or an empty path. If an empty path, no userlist will be
*/
virtual void LoadMasterlist(
const std::filesystem::path& masterlistPath) = 0;
/**
* @brief Loads the masterlist and masterlist prelude from the paths
specified.
* @details Can be called multiple times, each time replacing the
* previously-loaded data.
* @param masterlist_path
* The relative or absolute path to the masterlist file that should be
* loaded.
* @param masterlist_prelude_path
* The relative or absolute path to the masterlist prelude file that
* should be loaded. If an empty path, no masterlist prelude will be
* should be loaded.
*/
virtual void LoadMasterlistWithPrelude(
const std::filesystem::path& masterlistPath,
const std::filesystem::path& masterlistPreludePath) = 0;
/**
* @brief Loads the userlist from the path specified.
* @details Can be called multiple times, each time replacing the
* previously-loaded data.
* @param userlist_path
* The relative or absolute path to the userlist file that should be
* loaded.
*/
virtual void LoadLists(
const std::filesystem::path& masterlist_path,
const std::filesystem::path& userlist_path = "",
const std::filesystem::path& masterlist_prelude_path = "") = 0;
virtual void LoadUserlist(const std::filesystem::path& userlistPath) = 0;
/**
* Writes a metadata file containing all loaded user-added metadata.
+40 -32
View File
@@ -84,43 +84,51 @@ ApiDatabase::ApiDatabase(
// Database Loading Functions
///////////////////////////////////
void ApiDatabase::LoadLists(
const std::filesystem::path& masterlistPath,
const std::filesystem::path& userlistPath,
const std::filesystem::path& masterlistPreludePath) {
void ApiDatabase::LoadMasterlist(const std::filesystem::path& masterlistPath) {
MetadataList temp;
MetadataList userTemp;
if (!masterlistPath.empty()) {
if (std::filesystem::exists(masterlistPath)) {
if (!masterlistPreludePath.empty()) {
if (std::filesystem::exists(masterlistPreludePath)) {
temp.LoadWithPrelude(masterlistPath, masterlistPreludePath);
} else {
throw FileAccessError(
"The given masterlist prelude path does not exist: " +
masterlistPreludePath.u8string());
}
} else {
temp.Load(masterlistPath);
}
} else {
throw FileAccessError("The given masterlist path does not exist: " +
masterlistPath.u8string());
}
}
if (!userlistPath.empty()) {
if (std::filesystem::exists(userlistPath)) {
userTemp.Load(userlistPath);
} else {
throw FileAccessError("The given userlist path does not exist: " +
userlistPath.u8string());
}
if (std::filesystem::exists(masterlistPath)) {
temp.Load(masterlistPath);
} else {
throw FileAccessError("The given masterlist path does not exist: " +
masterlistPath.u8string());
}
masterlist_ = temp;
userlist_ = userTemp;
}
void ApiDatabase::LoadMasterlistWithPrelude(
const std::filesystem::path& masterlistPath,
const std::filesystem::path& masterlistPreludePath) {
MetadataList temp;
if (std::filesystem::exists(masterlistPath)) {
if (std::filesystem::exists(masterlistPreludePath)) {
temp.LoadWithPrelude(masterlistPath, masterlistPreludePath);
} else {
throw FileAccessError(
"The given masterlist prelude path does not exist: " +
masterlistPreludePath.u8string());
}
} else {
throw FileAccessError("The given masterlist path does not exist: " +
masterlistPath.u8string());
}
masterlist_ = temp;
}
void ApiDatabase::LoadUserlist(const std::filesystem::path& userlistPath) {
MetadataList temp;
if (std::filesystem::exists(userlistPath)) {
temp.Load(userlistPath);
} else {
throw FileAccessError("The given userlist path does not exist: " +
userlistPath.u8string());
}
userlist_ = temp;
}
void ApiDatabase::WriteUserMetadata(const std::filesystem::path& outputFile,
+9 -4
View File
@@ -39,10 +39,15 @@ namespace loot {
struct ApiDatabase final : public DatabaseInterface {
explicit ApiDatabase(std::shared_ptr<ConditionEvaluator> conditionEvaluator);
void LoadLists(
const std::filesystem::path& masterlist_path,
const std::filesystem::path& userlist_path = "",
const std::filesystem::path& masterlist_prelude_path = "") override;
void LoadMasterlist(
const std::filesystem::path& masterlistPath) override;
void LoadMasterlistWithPrelude(
const std::filesystem::path& masterlistPath,
const std::filesystem::path& masterlistPreludePath) override;
void LoadUserlist(
const std::filesystem::path& userlistPath) override;
void WriteUserMetadata(const std::filesystem::path& outputFile,
const bool overwrite) const override;
@@ -121,58 +121,42 @@ INSTANTIATE_TEST_SUITE_P(,
GameType::tes5se));
TEST_P(DatabaseInterfaceTest,
loadListsShouldSucceedEvenIfGameHandleIsDiscarded) {
loadMasterlistShouldSucceedEvenIfGameHandleIsDiscarded) {
handle_ = CreateGameHandle(GetParam(), gamePath, localPath);
ASSERT_NO_THROW(GenerateMasterlist());
EXPECT_NO_THROW(handle_->GetDatabase().LoadLists(masterlistPath, ""));
}
TEST_P(DatabaseInterfaceTest, loadListsShouldThrowIfNoMasterlistIsPresent) {
EXPECT_THROW(handle_->GetDatabase().LoadLists(masterlistPath, ""),
FileAccessError);
}
TEST_P(
DatabaseInterfaceTest,
loadListsShouldThrowIfAMasterlistIsPresentButAUserlistDoesNotExistAtTheGivenPath) {
ASSERT_NO_THROW(GenerateMasterlist());
EXPECT_THROW(handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_),
FileAccessError);
}
TEST_P(
DatabaseInterfaceTest,
loadListsShouldSucceedIfTheMasterlistIsPresentAndTheUserlistPathIsAnEmptyString) {
ASSERT_NO_THROW(GenerateMasterlist());
EXPECT_NO_THROW(handle_->GetDatabase().LoadLists(masterlistPath, ""));
EXPECT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
}
TEST_P(DatabaseInterfaceTest,
loadListsShouldSucceedIfTheMasterlistAndUserlistAreBothPresent) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(std::filesystem::copy(masterlistPath, userlistPath_));
loadMasterlistShouldThrowIfNoMasterlistIsPresent) {
EXPECT_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath),
FileAccessError);
}
EXPECT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
TEST_P(DatabaseInterfaceTest,
loadMasterlistShouldSucceedIfTheMasterlistIsPresent) {
ASSERT_NO_THROW(GenerateMasterlist());
EXPECT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
}
TEST_P(
DatabaseInterfaceTest,
loadListsShouldThrowIfAMasterlistIsPresentButAPreludeDoesNotExistAtTheGivenPath) {
loadMasterlistWithPreludeShouldThrowIfAMasterlistIsPresentButAPreludeDoesNotExistAtTheGivenPath) {
ASSERT_NO_THROW(GenerateMasterlist());
auto preludePath = localPath / "prelude.yaml";
EXPECT_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, "", preludePath),
FileAccessError);
EXPECT_THROW(handle_->GetDatabase().LoadMasterlistWithPrelude(masterlistPath,
preludePath),
FileAccessError);
}
TEST_P(DatabaseInterfaceTest,
loadListsShouldSucceedIfTheMasterlistAndPreludeAreBothPresent) {
TEST_P(
DatabaseInterfaceTest,
loadMasterlistWithPreludeShouldSucceedIfTheMasterlistAndPreludeAreBothPresent) {
using std::endl;
std::ofstream out(masterlistPath);
@@ -192,8 +176,8 @@ TEST_P(DatabaseInterfaceTest,
<< " type: say" << endl
<< " content: Loaded from prelude" << endl;
EXPECT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, "", preludePath));
EXPECT_NO_THROW(handle_->GetDatabase().LoadMasterlistWithPrelude(
masterlistPath, preludePath));
auto messages = handle_->GetDatabase().GetGeneralMessages();
ASSERT_EQ(1, messages.size());
@@ -202,6 +186,20 @@ TEST_P(DatabaseInterfaceTest,
EXPECT_EQ("Loaded from prelude", messages[0].GetContent()[0].GetText());
}
TEST_P(DatabaseInterfaceTest,
loadUserlistShouldThrowIfAUserlistDoesNotExistAtTheGivenPath) {
ASSERT_NO_THROW(GenerateMasterlist());
EXPECT_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_),
FileAccessError);
}
TEST_P(DatabaseInterfaceTest, loadUserlistShouldSucceedIfTheUserlistIsPresent) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(std::filesystem::copy(masterlistPath, userlistPath_));
EXPECT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
}
TEST_P(
DatabaseInterfaceTest,
writeUserMetadataShouldThrowIfTheFileAlreadyExistsAndTheOverwriteArgumentIsFalse) {
@@ -251,7 +249,7 @@ TEST_P(DatabaseInterfaceTest,
TEST_P(DatabaseInterfaceTest,
writeUserMetadataShouldShouldNotWriteMasterlistMetadata) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(handle_->GetDatabase().LoadLists(masterlistPath, ""));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
EXPECT_NO_THROW(
handle_->GetDatabase().WriteUserMetadata(minimalOutputPath_, true));
@@ -267,8 +265,8 @@ TEST_P(DatabaseInterfaceTest, writeUserMetadataShouldShouldWriteUserMetadata) {
masterlist << "bash_tags:\n []\nglobals:\n []\nplugins:\n []";
masterlist.close();
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
EXPECT_NO_THROW(
handle_->GetDatabase().WriteUserMetadata(minimalOutputPath_, true));
@@ -281,8 +279,8 @@ TEST_P(DatabaseInterfaceTest,
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto groups = handle_->GetDatabase().GetGroups();
@@ -317,8 +315,8 @@ TEST_P(DatabaseInterfaceTest,
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto groups = handle_->GetDatabase().GetGroups(false);
@@ -350,8 +348,8 @@ TEST_P(DatabaseInterfaceTest,
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto groups = handle_->GetDatabase().GetUserGroups();
@@ -373,8 +371,8 @@ TEST_P(
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
handle_->GetDatabase().SetUserGroups(std::vector<Group>({
Group("group4"),
@@ -396,8 +394,8 @@ TEST_P(DatabaseInterfaceTest,
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto path = handle_->GetDatabase().GetGroupsPath("group1", "group3");
@@ -413,8 +411,8 @@ TEST_P(DatabaseInterfaceTest,
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto tags = handle_->GetDatabase().GetKnownBashTags();
@@ -431,8 +429,8 @@ TEST_P(DatabaseInterfaceTest,
getGeneralMessagesShouldGetGeneralMessagesFromTheMasterlistAndUserlist) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto messages = handle_->GetDatabase().GetGeneralMessages();
@@ -449,7 +447,7 @@ TEST_P(
DatabaseInterfaceTest,
getGeneralMessagesShouldReturnOnlyValidMessagesIfConditionsAreEvaluated) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(handle_->GetDatabase().LoadLists(masterlistPath, ""));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
auto messages = handle_->GetDatabase().GetGeneralMessages(true);
@@ -466,8 +464,8 @@ TEST_P(
getPluginMetadataShouldReturnMergedMasterAndUserMetadataForTheGivenPluginIfIncludeUserMetadataIsTrue) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto metadata =
handle_->GetDatabase().GetPluginMetadata(blankEsm, true).value();
@@ -483,8 +481,8 @@ TEST_P(DatabaseInterfaceTest,
getPluginMetadataShouldPreferUserMetadataWhenMergingMetadata) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto metadata =
handle_->GetDatabase().GetPluginMetadata(blankEsm, true).value();
@@ -505,8 +503,8 @@ TEST_P(
getPluginMetadataShouldReturnOnlyMasterlistMetadataForTheGivenPluginIfIncludeUserMetadataIsFalse) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto metadata =
handle_->GetDatabase().GetPluginMetadata(blankEsm, false).value();
@@ -521,7 +519,7 @@ TEST_P(
DatabaseInterfaceTest,
getPluginMetadataShouldReturnOnlyValidMetadataForTheGivenPluginIfConditionsAreEvaluated) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(handle_->GetDatabase().LoadLists(masterlistPath, ""));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
auto metadata =
handle_->GetDatabase().GetPluginMetadata(blankEsm, false, true).value();
@@ -534,8 +532,8 @@ TEST_P(
getPluginUserMetadataShouldReturnAnEmptyPluginMetadataObjectIfThePluginHasNoUserMetadata) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
EXPECT_FALSE(handle_->GetDatabase().GetPluginUserMetadata(blankDifferentEsm));
}
@@ -544,8 +542,8 @@ TEST_P(DatabaseInterfaceTest,
getPluginUserMetadataShouldReturnOnlyUserMetadataForTheGivenPlugin) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto metadata =
handle_->GetDatabase().GetPluginUserMetadata(blankEsm).value();
@@ -561,8 +559,8 @@ TEST_P(
getPluginUserMetadataShouldReturnOnlyValidMetadataForTheGivenPluginIfConditionsAreEvaluated) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
auto metadata =
handle_->GetDatabase().GetPluginMetadata(blankEsm, false, true).value();
@@ -575,8 +573,8 @@ TEST_P(
setPluginUserMetadataShouldReplaceExistingUserMetadataWithTheGivenMetadata) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
PluginMetadata newMetadata(blankDifferentEsp);
newMetadata.SetRequirements(std::vector<File>({File(masterFile)}));
@@ -597,8 +595,8 @@ TEST_P(DatabaseInterfaceTest,
setPluginUserMetadataShouldNotAffectExistingMasterlistMetadata) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
PluginMetadata newMetadata(blankEsm);
newMetadata.SetRequirements(std::vector<File>({File(masterFile)}));
@@ -617,8 +615,8 @@ TEST_P(DatabaseInterfaceTest,
discardPluginUserMetadataShouldDiscardAllUserMetadataForTheGivenPlugin) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
handle_->GetDatabase().DiscardPluginUserMetadata(blankEsm);
@@ -630,8 +628,8 @@ TEST_P(
discardPluginUserMetadataShouldNotDiscardMasterlistMetadataForTheGivenPlugin) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
handle_->GetDatabase().DiscardPluginUserMetadata(blankEsm);
@@ -647,8 +645,8 @@ TEST_P(DatabaseInterfaceTest,
discardPluginUserMetadataShouldNotDiscardUserMetadataForOtherPlugins) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
handle_->GetDatabase().DiscardPluginUserMetadata(blankEsm);
@@ -662,8 +660,8 @@ TEST_P(DatabaseInterfaceTest,
discardPluginUserMetadataShouldNotDiscardGeneralMessages) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
handle_->GetDatabase().DiscardPluginUserMetadata(blankEsm);
@@ -682,8 +680,8 @@ TEST_P(DatabaseInterfaceTest,
discardPluginUserMetadataShouldNotDiscardKnownBashTags) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
handle_->GetDatabase().DiscardPluginUserMetadata(blankEsm);
@@ -703,8 +701,8 @@ TEST_P(
discardAllUserMetadataShouldDiscardAllUserMetadataAndNoMasterlistMetadata) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(GenerateUserlist());
ASSERT_NO_THROW(
handle_->GetDatabase().LoadLists(masterlistPath, userlistPath_));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
ASSERT_NO_THROW(handle_->GetDatabase().LoadUserlist(userlistPath_));
handle_->GetDatabase().DiscardAllUserMetadata();
@@ -792,7 +790,7 @@ TEST_P(DatabaseInterfaceTest,
TEST_P(DatabaseInterfaceTest,
writeMinimalListShouldWriteOnlyBashTagsAndDirtyInfo) {
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(handle_->GetDatabase().LoadLists(masterlistPath, ""));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
EXPECT_NO_THROW(
handle_->GetDatabase().WriteMinimalList(minimalOutputPath_, true));
@@ -235,7 +235,7 @@ TEST_P(GameInterfaceTest, sortPluginsShouldSucceedIfPassedValidArguments) {
}
ASSERT_NO_THROW(GenerateMasterlist());
ASSERT_NO_THROW(handle_->GetDatabase().LoadLists(masterlistPath, ""));
ASSERT_NO_THROW(handle_->GetDatabase().LoadMasterlist(masterlistPath));
if (GetParam() == GameType::fo4 || GetParam() == GameType::tes5se) {
pluginsToLoad.push_back(blankEsl);