Remove PluginMetadata::NewMetadata()

It's unused by LOOT.
This commit is contained in:
Oliver Hamlet
2022-02-27 10:20:29 +00:00
parent 874a3d86b5
commit cc3c63dd0a
3 changed files with 0 additions and 220 deletions
-11
View File
@@ -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.
-35
View File
@@ -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<Message> msgs1 = plugin.GetMessages();
vector<Message> msgs2 = messages_;
std::sort(begin(msgs1), end(msgs1));
std::sort(begin(msgs2), end(msgs2));
vector<Message> 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<std::string> PluginMetadata::GetGroup() const { return group_; }
@@ -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<File>({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<File>({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<File>({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<Message>({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<Tag>({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<PluginCleaningData>({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<PluginCleaningData>({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<Location>({location2}), newMetadata.GetLocations());
}
TEST_P(PluginMetadataTest, unsetGroupShouldLeaveNoGroupValueSet) {
PluginMetadata plugin;
EXPECT_FALSE(plugin.GetGroup().has_value());