From cc3c63dd0ac17074c1a7fd5e3b298375003e585c Mon Sep 17 00:00:00 2001 From: Oliver Hamlet Date: Sun, 27 Feb 2022 09:47:28 +0000 Subject: [PATCH] Remove PluginMetadata::NewMetadata() It's unused by LOOT. --- include/loot/metadata/plugin_metadata.h | 11 -- src/api/metadata/plugin_metadata.cpp | 35 ---- .../internals/metadata/plugin_metadata_test.h | 174 ------------------ 3 files changed, 220 deletions(-) diff --git a/include/loot/metadata/plugin_metadata.h b/include/loot/metadata/plugin_metadata.h index b346205e..f1a58122 100644 --- a/include/loot/metadata/plugin_metadata.h +++ b/include/loot/metadata/plugin_metadata.h @@ -71,17 +71,6 @@ public: */ LOOT_API void MergeMetadata(const PluginMetadata& plugin); - /** - * Get metadata in this object that isn't present in the given PluginMetadata - * object. - * @param plugin - * The PluginMetadata object to compare against. - * @return A PluginMetadata object containing the metadata in this object that - * is not in the given object. The returned object inherits this - * object's group. - */ - LOOT_API PluginMetadata NewMetadata(const PluginMetadata& plugin) const; - /** * Get the plugin name. * @return The plugin name. diff --git a/src/api/metadata/plugin_metadata.cpp b/src/api/metadata/plugin_metadata.cpp index 90f9cf32..1738ee70 100644 --- a/src/api/metadata/plugin_metadata.cpp +++ b/src/api/metadata/plugin_metadata.cpp @@ -78,41 +78,6 @@ void PluginMetadata::MergeMetadata(const PluginMetadata& plugin) { return; } -PluginMetadata PluginMetadata::NewMetadata(const PluginMetadata& plugin) const { - using std::set_difference; - - PluginMetadata p(*this); - - if (p.group_ == plugin.group_) { - p.group_ = std::nullopt; - } - - // Compare this plugin against the given plugin. - p.SetLoadAfterFiles(diffVectors(loadAfter_, plugin.loadAfter_)); - p.SetRequirements(diffVectors(requirements_, plugin.requirements_)); - p.SetIncompatibilities( - diffVectors(incompatibilities_, plugin.incompatibilities_)); - - vector msgs1 = plugin.GetMessages(); - vector msgs2 = messages_; - std::sort(begin(msgs1), end(msgs1)); - std::sort(begin(msgs2), end(msgs2)); - vector mDiff; - set_difference(begin(msgs2), - end(msgs2), - begin(msgs1), - end(msgs1), - inserter(mDiff, begin(mDiff))); - p.SetMessages(mDiff); - - p.SetTags(diffVectors(tags_, plugin.tags_)); - p.SetDirtyInfo(diffVectors(dirtyInfo_, plugin.dirtyInfo_)); - p.SetCleanInfo(diffVectors(cleanInfo_, plugin.cleanInfo_)); - p.SetLocations(diffVectors(locations_, plugin.locations_)); - - return p; -} - std::string PluginMetadata::GetName() const { return name_; } std::optional PluginMetadata::GetGroup() const { return group_; } diff --git a/src/tests/api/internals/metadata/plugin_metadata_test.h b/src/tests/api/internals/metadata/plugin_metadata_test.h index 36e318b2..88f1fdf5 100644 --- a/src/tests/api/internals/metadata/plugin_metadata_test.h +++ b/src/tests/api/internals/metadata/plugin_metadata_test.h @@ -250,180 +250,6 @@ TEST_P(PluginMetadataTest, mergeMetadataShouldMergeLocationData) { plugin1.GetLocations()); } -TEST_P(PluginMetadataTest, newMetadataShouldUseSourcePluginName) { - PluginMetadata plugin1(blankEsm); - PluginMetadata plugin2(blankDifferentEsm); - - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ(blankEsm, newMetadata.GetName()); -} - -TEST_P(PluginMetadataTest, - newMetadataShouldUseSourcePluginGroupExplicitlyIfItIsExplicit) { - PluginMetadata plugin1; - PluginMetadata plugin2; - - plugin1.SetGroup("group1"); - plugin2.SetGroup("group2"); - - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ("group1", newMetadata.GetGroup().value()); -} - -TEST_P( - PluginMetadataTest, - newMetadataShouldUseGivenPluginGroupImplicitlyIfTheSourcePluginGroupIsNotExplicit) { - PluginMetadata plugin1; - PluginMetadata plugin2; - - plugin2.SetGroup("group2"); - - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_FALSE(newMetadata.GetGroup()); -} - -TEST_P(PluginMetadataTest, - newMetadataShouldUseSourcePluginGroupImplicitlyIfTheGroupsAreTheSame) { - PluginMetadata plugin1; - PluginMetadata plugin2; - - plugin1.SetGroup("group1"); - plugin2.SetGroup("group1"); - - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_FALSE(newMetadata.GetGroup()); -} - -TEST_P(PluginMetadataTest, - newMetadataShouldOutputLoadAfterDataThatAreNotCommonToBothInputPlugins) { - PluginMetadata plugin1; - PluginMetadata plugin2; - File file1(blankEsm); - File file2(blankDifferentEsm); - File file3(blankEsp); - - plugin1.SetLoadAfterFiles({file1, file2}); - plugin2.SetLoadAfterFiles({file1, file3}); - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ(std::vector({file2}), newMetadata.GetLoadAfterFiles()); -} - -TEST_P( - PluginMetadataTest, - newMetadataShouldOutputRequirementsDataThatAreNotCommonToBothInputPlugins) { - PluginMetadata plugin1; - PluginMetadata plugin2; - File file1(blankEsm); - File file2(blankDifferentEsm); - File file3(blankEsp); - - plugin1.SetRequirements({file1, file2}); - plugin2.SetRequirements({file1, file3}); - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ(std::vector({file2}), newMetadata.GetRequirements()); -} - -TEST_P( - PluginMetadataTest, - newMetadataShouldOutputIncompatibilityDataThatAreNotCommonToBothInputPlugins) { - PluginMetadata plugin1; - PluginMetadata plugin2; - File file1(blankEsm); - File file2(blankDifferentEsm); - File file3(blankEsp); - - plugin1.SetIncompatibilities({file1, file2}); - plugin2.SetIncompatibilities({file1, file3}); - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ(std::vector({file2}), newMetadata.GetIncompatibilities()); -} - -TEST_P(PluginMetadataTest, - newMetadataShouldOutputMessagesThatAreNotCommonToBothInputPlugins) { - PluginMetadata plugin1; - PluginMetadata plugin2; - Message message1(MessageType::say, "content1"); - Message message2(MessageType::say, "content2"); - Message message3(MessageType::say, "content3"); - - plugin1.SetMessages({message1, message2}); - plugin2.SetMessages({message1, message3}); - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ(std::vector({message2}), newMetadata.GetMessages()); -} - -TEST_P(PluginMetadataTest, - newMetadataShouldOutputTagsThatAreNotCommonToBothInputPlugins) { - PluginMetadata plugin1; - PluginMetadata plugin2; - Tag tag1("Relev"); - Tag tag2("Relev", false); - Tag tag3("Delev"); - - plugin1.SetTags({tag1, tag2}); - plugin2.SetTags({tag1, tag3}); - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ(std::vector({tag2}), newMetadata.GetTags()); -} - -TEST_P( - PluginMetadataTest, - newMetadataShouldOutputDirtyInfoObjectsThatAreNotCommonToBothInputPlugins) { - PluginMetadata plugin1; - PluginMetadata plugin2; - PluginCleaningData info1(0x5, "utility", info_, 1, 2, 3); - PluginCleaningData info2(0xA, "utility", info_, 1, 2, 3); - PluginCleaningData info3(0x1, "utility", info_, 1, 2, 3); - - plugin1.SetDirtyInfo({info1, info2}); - plugin2.SetDirtyInfo({info1, info3}); - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ(std::vector({info2}), - newMetadata.GetDirtyInfo()); -} - -TEST_P( - PluginMetadataTest, - newMetadataShouldOutputCleanInfoObjectsThatAreNotCommonToBothInputPlugins) { - PluginMetadata plugin1; - PluginMetadata plugin2; - PluginCleaningData info1(0x5, "utility"); - PluginCleaningData info2(0xA, "utility"); - PluginCleaningData info3(0x1, "utility"); - - plugin1.SetCleanInfo({info1, info2}); - plugin2.SetCleanInfo({info1, info3}); - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ(std::vector({info2}), - newMetadata.GetCleanInfo()); -} - -TEST_P(PluginMetadataTest, - newMetadataShouldOutputLocationsThatAreNotCommonToBothInputPlugins) { - PluginMetadata plugin1; - PluginMetadata plugin2; - Location location1("http://www.example.com/1"); - Location location2("http://www.example.com/2"); - Location location3("http://www.example.com/3"); - - plugin1.SetLocations({location1, location2}); - plugin2.SetLocations({location1, location3}); - PluginMetadata newMetadata = plugin1.NewMetadata(plugin2); - - EXPECT_EQ(std::vector({location2}), newMetadata.GetLocations()); -} - TEST_P(PluginMetadataTest, unsetGroupShouldLeaveNoGroupValueSet) { PluginMetadata plugin; EXPECT_FALSE(plugin.GetGroup().has_value());