From c29b5b7d5023757f973b68416bf0f2039c2a3d1c Mon Sep 17 00:00:00 2001 From: Oliver Hamlet Date: Fri, 12 Aug 2016 19:46:03 +0100 Subject: [PATCH] Refactor language codes out of Language class So that the C++ API won't need to include the whole Language class amongst its headers. --- CMakeLists.txt | 1 + include/loot/language_code.h | 44 ++++++++++++ src/backend/app/loot_settings.cpp | 3 +- src/backend/app/loot_state.cpp | 4 +- src/backend/helpers/language.cpp | 56 +++++++-------- src/backend/helpers/language.h | 25 ++----- src/backend/metadata/message.cpp | 12 ++-- src/backend/metadata/message.h | 8 +-- src/backend/metadata/message_content.cpp | 10 +-- src/backend/metadata/message_content.h | 10 +-- src/backend/metadata/plugin_cleaning_data.cpp | 2 +- src/backend/metadata/plugin_cleaning_data.h | 6 +- src/backend/metadata/plugin_metadata.cpp | 2 +- src/backend/metadata/plugin_metadata.h | 2 +- src/backend/metadata_list.cpp | 2 +- src/backend/metadata_list.h | 2 +- src/backend/plugin/plugin_sorter.cpp | 4 +- src/backend/plugin/plugin_sorter.h | 4 +- src/gui/loot_app.cpp | 2 +- src/tests/backend/helpers/language_test.h | 42 +++++------ .../backend/metadata/message_content_test.h | 30 ++++---- src/tests/backend/metadata/message_test.h | 71 +++++++++---------- .../metadata/plugin_cleaning_data_test.h | 22 +++--- .../backend/metadata/plugin_metadata_test.h | 4 +- src/tests/backend/metadata_list_test.h | 2 +- src/tests/backend/plugin/plugin_sorter_test.h | 20 +++--- src/tests/backend/plugin/plugin_test.h | 2 +- 27 files changed, 213 insertions(+), 179 deletions(-) create mode 100644 include/loot/language_code.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 0f6be2a4..359c3cf3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -208,6 +208,7 @@ set (LOOT_HEADERS "${CMAKE_SOURCE_DIR}/src/backend/app/loot_paths.h" "${CMAKE_SOURCE_DIR}/src/backend/helpers/yaml_set_helpers.h" "${CMAKE_SOURCE_DIR}/src/backend/error.h" "${CMAKE_SOURCE_DIR}/include/loot/game_type.h" + "${CMAKE_SOURCE_DIR}/include/loot/language_code.h" "${CMAKE_SOURCE_DIR}/include/loot/message_type.h") set (LOOT_GUI_SRC "${CMAKE_SOURCE_DIR}/src/gui/main.cpp" diff --git a/include/loot/language_code.h b/include/loot/language_code.h new file mode 100644 index 00000000..79bda4a4 --- /dev/null +++ b/include/loot/language_code.h @@ -0,0 +1,44 @@ +/* LOOT + +A load order optimisation tool for Oblivion, Skyrim, Fallout 3 and +Fallout: New Vegas. + +Copyright (C) 2012-2016 WrinklyNinja + +This file is part of LOOT. + +LOOT is free software: you can redistribute +it and/or modify it under the terms of the GNU General Public License +as published by the Free Software Foundation, either version 3 of +the License, or (at your option) any later version. + +LOOT is distributed in the hope that it will +be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with LOOT. If not, see +. +*/ + +#ifndef LOOT_LANGUAGE_CODE +#define LOOT_LANGUAGE_CODE + +namespace loot { +enum struct LanguageCode : unsigned int { + english = 1, + spanish = 2, + russian = 3, + french = 4, + chinese = 5, + polish = 6, + brazilian_portuguese = 7, + finnish = 8, + german = 9, + danish = 10, + korean = 11 +}; +} + +#endif diff --git a/src/backend/app/loot_settings.cpp b/src/backend/app/loot_settings.cpp index 5e993d9d..36f11b8b 100644 --- a/src/backend/app/loot_settings.cpp +++ b/src/backend/app/loot_settings.cpp @@ -29,6 +29,7 @@ #include #include "backend/app/loot_version.h" +#include "loot/loot_version.h" using std::lock_guard; using std::recursive_mutex; @@ -58,7 +59,7 @@ LootSettings::LootSettings() : enableDebugLogging_(false), updateMasterlist_(true), game_("auto"), -language_(Language(Language::Code::english)), +language_(Language(LanguageCode::english)), lastGame_("auto") {} void LootSettings::load(YAML::Node& settings) { diff --git a/src/backend/app/loot_state.cpp b/src/backend/app/loot_state.cpp index fcbda594..fcaff1f6 100644 --- a/src/backend/app/loot_state.cpp +++ b/src/backend/app/loot_state.cpp @@ -112,7 +112,7 @@ void LootState::init(const std::string& cmdLineGame) { gen.add_messages_domain("loot"); //Boost.Locale initialisation: Generate and imbue locales. - locale::global(gen(Language(Language::Code::english).GetLocale() + ".UTF-8")); + locale::global(gen(Language(LanguageCode::english).GetLocale() + ".UTF-8")); boost::filesystem::path::imbue(locale()); // Check if the LOOT local app data folder exists, and create it if not. @@ -162,7 +162,7 @@ void LootState::init(const std::string& cmdLineGame) { fs::remove(LootPaths::getLootDataPath() / "CEFDebugLog.txt"); // Now that settings have been loaded, set the locale again to handle translations. - if (getLanguage().GetCode() != Language::Code::english) { + if (getLanguage().GetCode() != LanguageCode::english) { BOOST_LOG_TRIVIAL(debug) << "Initialising language settings."; Language lang(getLanguage()); BOOST_LOG_TRIVIAL(debug) << "Selected language: " << lang.GetName(); diff --git a/src/backend/helpers/language.cpp b/src/backend/helpers/language.cpp index 2e7e248d..41df0fe8 100644 --- a/src/backend/helpers/language.cpp +++ b/src/backend/helpers/language.cpp @@ -25,75 +25,75 @@ #include "backend/helpers/language.h" namespace loot { -const std::vector Language::codes({ - Code::english, - Code::spanish, - Code::russian, - Code::french, - Code::chinese, - Code::polish, - Code::brazilian_portuguese, - Code::finnish, - Code::german, - Code::danish, - Code::korean +const std::vector Language::codes({ + LanguageCode::english, + LanguageCode::spanish, + LanguageCode::russian, + LanguageCode::french, + LanguageCode::chinese, + LanguageCode::polish, + LanguageCode::brazilian_portuguese, + LanguageCode::finnish, + LanguageCode::german, + LanguageCode::danish, + LanguageCode::korean }); -Language::Language(Code code) { +Language::Language(LanguageCode code) { Construct(code); } Language::Language(const std::string& locale) { - for (Code code : codes) { + for (LanguageCode code : codes) { if (locale == Language(code).GetLocale()) { Construct(code); return; } } - Construct(Code::english); + Construct(LanguageCode::english); } -void Language::Construct(const Code code) { +void Language::Construct(const LanguageCode code) { code_ = code; - if (code_ == Code::spanish) { + if (code_ == LanguageCode::spanish) { name_ = "Español"; locale_ = "es"; - } else if (code_ == Code::russian) { + } else if (code_ == LanguageCode::russian) { name_ = "Русский"; locale_ = "ru"; - } else if (code_ == Code::french) { + } else if (code_ == LanguageCode::french) { name_ = "Français"; locale_ = "fr"; - } else if (code_ == Code::chinese) { + } else if (code_ == LanguageCode::chinese) { name_ = "简体中文"; locale_ = "zh_CN"; - } else if (code_ == Code::polish) { + } else if (code_ == LanguageCode::polish) { name_ = "Polski"; locale_ = "pl"; - } else if (code_ == Code::brazilian_portuguese) { + } else if (code_ == LanguageCode::brazilian_portuguese) { name_ = "Português do Brasil"; locale_ = "pt_BR"; - } else if (code_ == Code::finnish) { + } else if (code_ == LanguageCode::finnish) { name_ = "suomi"; locale_ = "fi"; - } else if (code_ == Code::german) { + } else if (code_ == LanguageCode::german) { name_ = "Deutsch"; locale_ = "de"; - } else if (code_ == Code::danish) { + } else if (code_ == LanguageCode::danish) { name_ = "Dansk"; locale_ = "da"; - } else if (code_ == Code::korean) { + } else if (code_ == LanguageCode::korean) { name_ = "한국어"; locale_ = "ko"; } else { - code_ = Code::english; + code_ = LanguageCode::english; name_ = "English"; locale_ = "en"; } } -Language::Code Language::GetCode() const { +LanguageCode Language::GetCode() const { return code_; } diff --git a/src/backend/helpers/language.h b/src/backend/helpers/language.h index 13fbc867..2dffbd89 100644 --- a/src/backend/helpers/language.h +++ b/src/backend/helpers/language.h @@ -28,36 +28,25 @@ #include #include +#include "loot/language_code.h" + namespace loot { //Language class for simpler language support. class Language { public: - enum struct Code : unsigned int { - english = 1, - spanish = 2, - russian = 3, - french = 4, - chinese = 5, - polish = 6, - brazilian_portuguese = 7, - finnish = 8, - german = 9, - danish = 10, - korean = 11 - }; - static const std::vector codes; + static const std::vector codes; - Language(const Code code); + Language(const LanguageCode code); Language(const std::string& locale); - Code GetCode() const; + LanguageCode GetCode() const; std::string GetName() const; std::string GetLocale() const; private: - void Construct(const Code code); + void Construct(const LanguageCode code); - Code code_; + LanguageCode code_; std::string name_; std::string locale_; }; diff --git a/src/backend/metadata/message.cpp b/src/backend/metadata/message.cpp index 681325c5..6cfacc26 100644 --- a/src/backend/metadata/message.cpp +++ b/src/backend/metadata/message.cpp @@ -35,7 +35,7 @@ Message::Message() : type_(MessageType::say) {} Message::Message(const MessageType type, const std::string& content, const std::string& condition) : type_(type), ConditionalMetadata(condition) { - content_.push_back(MessageContent(content, Language::Code::english)); + content_.push_back(MessageContent(content, LanguageCode::english)); } Message::Message(const MessageType type, const std::vector& content, @@ -43,7 +43,7 @@ Message::Message(const MessageType type, const std::vector& cont if (content.size() > 1) { bool englishStringExists = false; for (const auto &mc : content) { - if (mc.GetLanguage() == Language::Code::english) + if (mc.GetLanguage() == LanguageCode::english) englishStringExists = true; } if (!englishStringExists) @@ -53,7 +53,7 @@ Message::Message(const MessageType type, const std::vector& cont bool Message::operator < (const Message& rhs) const { if (!content_.empty() && !rhs.GetContent().empty()) - return boost::ilexicographical_compare(ChooseContent(Language::Code::english).GetText(), rhs.ChooseContent(Language::Code::english).GetText()); + return boost::ilexicographical_compare(ChooseContent(LanguageCode::english).GetText(), rhs.ChooseContent(LanguageCode::english).GetText()); else if (content_.empty() && !rhs.GetContent().empty()) return true; else @@ -64,14 +64,14 @@ bool Message::operator == (const Message& rhs) const { return (content_ == rhs.GetContent()); } -bool Message::EvalCondition(loot::Game& game, const Language::Code language) { +bool Message::EvalCondition(loot::Game& game, const LanguageCode language) { BOOST_LOG_TRIVIAL(trace) << "Choosing message content for language: " << Language(language).GetName(); content_.assign({ChooseContent(language)}); return ConditionalMetadata::EvalCondition(game); } -MessageContent Message::ChooseContent(const Language::Code language) const { +MessageContent Message::ChooseContent(const LanguageCode language) const { BOOST_LOG_TRIVIAL(trace) << "Choosing message content."; return MessageContent::Choose(content_, language); } @@ -81,7 +81,7 @@ MessageType Message::GetType() const { } std::string Message::GetText() const { - return ChooseContent(Language::Code::english).GetText(); + return ChooseContent(LanguageCode::english).GetText(); } std::vector Message::GetContent() const { diff --git a/src/backend/metadata/message.h b/src/backend/metadata/message.h index e81e2a82..3494554d 100644 --- a/src/backend/metadata/message.h +++ b/src/backend/metadata/message.h @@ -50,13 +50,13 @@ public: bool operator < (const Message& rhs) const; bool operator == (const Message& rhs) const; - bool EvalCondition(Game& game, const Language::Code language); + bool EvalCondition(Game& game, const LanguageCode language); MessageType GetType() const; std::string GetText() const; std::vector GetContent() const; private: - MessageContent ChooseContent(const Language::Code language) const; + MessageContent ChooseContent(const LanguageCode language) const; MessageType type_; std::vector content_; @@ -104,14 +104,14 @@ struct convert { if (node["content"].IsSequence()) content = node["content"].as< std::vector >(); else { - content.push_back(loot::MessageContent(node["content"].as(), loot::Language::Code::english)); + content.push_back(loot::MessageContent(node["content"].as(), loot::LanguageCode::english)); } //Check now that at least one item in content is English if there are multiple items. if (content.size() > 1) { bool found = false; for (const auto &mc : content) { - if (mc.GetLanguage() == loot::Language::Code::english) + if (mc.GetLanguage() == loot::LanguageCode::english) found = true; } if (!found) diff --git a/src/backend/metadata/message_content.cpp b/src/backend/metadata/message_content.cpp index de6c521d..3b530cb0 100644 --- a/src/backend/metadata/message_content.cpp +++ b/src/backend/metadata/message_content.cpp @@ -29,15 +29,15 @@ #include "backend/helpers/language.h" namespace loot { -MessageContent::MessageContent() : language_(Language::Code::english) {} +MessageContent::MessageContent() : language_(LanguageCode::english) {} -MessageContent::MessageContent(const std::string& text, const Language::Code language) : text_(text), language_(language) {} +MessageContent::MessageContent(const std::string& text, const LanguageCode language) : text_(text), language_(language) {} std::string MessageContent::GetText() const { return text_; } -Language::Code MessageContent::GetLanguage() const { +LanguageCode MessageContent::GetLanguage() const { return language_; } @@ -49,7 +49,7 @@ bool MessageContent::operator == (const MessageContent& rhs) const { return (boost::iequals(text_, rhs.GetText())); } MessageContent MessageContent::Choose(const std::vector content, - const Language::Code language) { + const LanguageCode language) { if (content.empty()) return MessageContent(); else if (content.size() == 1) @@ -59,7 +59,7 @@ MessageContent MessageContent::Choose(const std::vector content, for (const auto &mc : content) { if (mc.GetLanguage() == language) { return mc; - } else if (mc.GetLanguage() == Language::Code::english) + } else if (mc.GetLanguage() == LanguageCode::english) english = mc; } return english; diff --git a/src/backend/metadata/message_content.h b/src/backend/metadata/message_content.h index 28f2d858..d80d57a2 100644 --- a/src/backend/metadata/message_content.h +++ b/src/backend/metadata/message_content.h @@ -34,19 +34,19 @@ namespace loot { class MessageContent { public: MessageContent(); - MessageContent(const std::string& text, const Language::Code language); + MessageContent(const std::string& text, const LanguageCode language); std::string GetText() const; - Language::Code GetLanguage() const; + LanguageCode GetLanguage() const; bool operator < (const MessageContent& rhs) const; bool operator == (const MessageContent& rhs) const; static MessageContent Choose(const std::vector content, - const Language::Code language); + const LanguageCode language); private: std::string text_; - Language::Code language_; + LanguageCode language_; }; } @@ -70,7 +70,7 @@ struct convert { throw RepresentationException(node.Mark(), "bad conversion: 'lang' key missing from 'message content' object"); std::string text = node["text"].as(); - loot::Language::Code lang = loot::Language(node["lang"].as()).GetCode(); + loot::LanguageCode lang = loot::Language(node["lang"].as()).GetCode(); rhs = loot::MessageContent(text, lang); diff --git a/src/backend/metadata/plugin_cleaning_data.cpp b/src/backend/metadata/plugin_cleaning_data.cpp index f241141c..cb93a296 100644 --- a/src/backend/metadata/plugin_cleaning_data.cpp +++ b/src/backend/metadata/plugin_cleaning_data.cpp @@ -77,7 +77,7 @@ std::vector PluginCleaningData::Info() const { return info_; } -MessageContent PluginCleaningData::ChooseInfo(const Language::Code language) const { +MessageContent PluginCleaningData::ChooseInfo(const LanguageCode language) const { BOOST_LOG_TRIVIAL(trace) << "Choosing dirty info content."; return MessageContent::Choose(info_, language); } diff --git a/src/backend/metadata/plugin_cleaning_data.h b/src/backend/metadata/plugin_cleaning_data.h index 6439c10f..d345ceae 100644 --- a/src/backend/metadata/plugin_cleaning_data.h +++ b/src/backend/metadata/plugin_cleaning_data.h @@ -56,7 +56,7 @@ public: std::string CleaningUtility() const; std::vector Info() const; - MessageContent ChooseInfo(const Language::Code language) const; + MessageContent ChooseInfo(const LanguageCode language) const; Message AsMessage() const; bool EvalCondition(Game& game, const std::string& pluginName) const; @@ -114,7 +114,7 @@ struct convert { if (node["info"].IsSequence()) info = node["info"].as>(); else { - info.push_back(loot::MessageContent(node["info"].as(), loot::Language::Code::english)); + info.push_back(loot::MessageContent(node["info"].as(), loot::LanguageCode::english)); } } @@ -122,7 +122,7 @@ struct convert { if (info.size() > 1) { bool found = false; for (const auto &mc : info) { - if (mc.GetLanguage() == loot::Language::Code::english) + if (mc.GetLanguage() == loot::LanguageCode::english) found = true; } if (!found) diff --git a/src/backend/metadata/plugin_metadata.cpp b/src/backend/metadata/plugin_metadata.cpp index 3c7f0ab3..12606647 100644 --- a/src/backend/metadata/plugin_metadata.cpp +++ b/src/backend/metadata/plugin_metadata.cpp @@ -345,7 +345,7 @@ void PluginMetadata::Locations(const std::set& locations) { locations_ = locations; } -PluginMetadata& PluginMetadata::EvalAllConditions(Game& game, const Language::Code language) { +PluginMetadata& PluginMetadata::EvalAllConditions(Game& game, const LanguageCode language) { for (auto it = loadAfter_.begin(); it != loadAfter_.end();) { if (!it->EvalCondition(game)) loadAfter_.erase(it++); diff --git a/src/backend/metadata/plugin_metadata.h b/src/backend/metadata/plugin_metadata.h index 3a8127c4..f0b927f7 100644 --- a/src/backend/metadata/plugin_metadata.h +++ b/src/backend/metadata/plugin_metadata.h @@ -89,7 +89,7 @@ public: void CleanInfo(const std::set& info); void Locations(const std::set& locations); - PluginMetadata& EvalAllConditions(Game& game, const Language::Code language); + PluginMetadata& EvalAllConditions(Game& game, const LanguageCode language); bool HasNameOnly() const; bool IsRegexPlugin() const; diff --git a/src/backend/metadata_list.cpp b/src/backend/metadata_list.cpp index 057756d4..b595b7fa 100644 --- a/src/backend/metadata_list.cpp +++ b/src/backend/metadata_list.cpp @@ -148,7 +148,7 @@ void MetadataList::AppendMessage(const Message& message) { messages_.push_back(message); } -void MetadataList::EvalAllConditions(Game& game, const Language::Code language) { +void MetadataList::EvalAllConditions(Game& game, const LanguageCode language) { std::unordered_set replacementSet; for (auto &plugin : plugins_) { PluginMetadata p(plugin); diff --git a/src/backend/metadata_list.h b/src/backend/metadata_list.h index a5ad5d76..8c5aa47e 100644 --- a/src/backend/metadata_list.h +++ b/src/backend/metadata_list.h @@ -57,7 +57,7 @@ public: void AppendMessage(const Message& message); // Eval plugin conditions. - void EvalAllConditions(Game& game, const Language::Code language); + void EvalAllConditions(Game& game, const LanguageCode language); protected: std::set bashTags_; diff --git a/src/backend/plugin/plugin_sorter.cpp b/src/backend/plugin/plugin_sorter.cpp index db5a8dfb..5a3ae221 100644 --- a/src/backend/plugin/plugin_sorter.cpp +++ b/src/backend/plugin/plugin_sorter.cpp @@ -98,7 +98,7 @@ private: vertex_t target; }; -std::vector PluginSorter::Sort(Game& game, const Language::Code language) { +std::vector PluginSorter::Sort(Game& game, const LanguageCode language) { using std::vector; // Clear existing data. graph_.clear(); @@ -167,7 +167,7 @@ std::vector PluginSorter::Sort(Game& game, const Language::Code language return plugins; } -void PluginSorter::AddPluginVertices(Game& game, const Language::Code language) { +void PluginSorter::AddPluginVertices(Game& game, const LanguageCode language) { BOOST_LOG_TRIVIAL(info) << "Merging masterlist, userlist into plugin list, evaluating conditions and checking for install validity."; // The resolution of tie-breaks in the plugin graph may be dependent diff --git a/src/backend/plugin/plugin_sorter.h b/src/backend/plugin/plugin_sorter.h index 30638f61..38823ab2 100644 --- a/src/backend/plugin/plugin_sorter.h +++ b/src/backend/plugin/plugin_sorter.h @@ -40,7 +40,7 @@ typedef boost::associative_property_map> vertex_map_t class PluginSorter { public: - std::vector Sort(Game& game, const Language::Code language); + std::vector Sort(Game& game, const LanguageCode language); private: bool GetVertexByName(const std::string& name, vertex_t& vertex) const; void CheckForCycles() const; @@ -50,7 +50,7 @@ private: void PropagatePriorities(); - void AddPluginVertices(Game& game, const Language::Code language); + void AddPluginVertices(Game& game, const LanguageCode language); void AddSpecificEdges(); void AddPriorityEdges(); void AddOverlapEdges(); diff --git a/src/gui/loot_app.cpp b/src/gui/loot_app.cpp index 1c7215e6..431e3f10 100644 --- a/src/gui/loot_app.cpp +++ b/src/gui/loot_app.cpp @@ -91,7 +91,7 @@ void LootApp::OnContextInitialized() { // Need to set the global locale for this process so that messages will // be translated. BOOST_LOG_TRIVIAL(debug) << "Initialising language settings in UI thread."; - if (lootState_.getLanguage().GetCode() != Language::Code::english) { + if (lootState_.getLanguage().GetCode() != LanguageCode::english) { boost::locale::generator gen; gen.add_messages_path(LootPaths::getL10nPath().string()); gen.add_messages_domain("loot"); diff --git a/src/tests/backend/helpers/language_test.h b/src/tests/backend/helpers/language_test.h index 734eee8d..0dd3660e 100644 --- a/src/tests/backend/helpers/language_test.h +++ b/src/tests/backend/helpers/language_test.h @@ -32,56 +32,56 @@ along with LOOT. If not, see namespace loot { namespace test { TEST(Language, codeConstructorShouldSetTheCorrectData) { - Language lang(Language::Code::english); - EXPECT_EQ(Language::Code::english, lang.GetCode()); + Language lang(LanguageCode::english); + EXPECT_EQ(LanguageCode::english, lang.GetCode()); EXPECT_EQ("English", lang.GetName()); EXPECT_EQ("en", lang.GetLocale()); - lang = Language(Language::Code::polish); - EXPECT_EQ(Language::Code::polish, lang.GetCode()); + lang = Language(LanguageCode::polish); + EXPECT_EQ(LanguageCode::polish, lang.GetCode()); EXPECT_EQ("Polski", lang.GetName()); EXPECT_EQ("pl", lang.GetLocale()); } TEST(Language, localeConstructorShouldSetTheCorrectData) { Language lang("en"); - EXPECT_EQ(Language::Code::english, lang.GetCode()); + EXPECT_EQ(LanguageCode::english, lang.GetCode()); EXPECT_EQ("English", lang.GetName()); EXPECT_EQ("en", lang.GetLocale()); lang = Language("de"); - EXPECT_EQ(Language::Code::german, lang.GetCode()); + EXPECT_EQ(LanguageCode::german, lang.GetCode()); EXPECT_EQ("Deutsch", lang.GetName()); EXPECT_EQ("de", lang.GetLocale()); } TEST(Language, codeConstructorShouldTreatAnInvalidCodeAsEnglish) { - Language lang(Language::Code(1000)); - EXPECT_EQ(Language::Code::english, lang.GetCode()); + Language lang(LanguageCode(1000)); + EXPECT_EQ(LanguageCode::english, lang.GetCode()); EXPECT_EQ("English", lang.GetName()); EXPECT_EQ("en", lang.GetLocale()); } TEST(Language, localeConstructorShouldTreatAnInvalidLocaleAsEnglish) { Language lang("foo"); - EXPECT_EQ(Language::Code::english, lang.GetCode()); + EXPECT_EQ(LanguageCode::english, lang.GetCode()); EXPECT_EQ("English", lang.GetName()); EXPECT_EQ("en", lang.GetLocale()); } TEST(Language, codesShouldContainAllExpectedLanguageCodes) { - std::vector codes = { - Language::Code::english, - Language::Code::spanish, - Language::Code::russian, - Language::Code::french, - Language::Code::chinese, - Language::Code::polish, - Language::Code::brazilian_portuguese, - Language::Code::finnish, - Language::Code::german, - Language::Code::danish, - Language::Code::korean + std::vector codes = { + LanguageCode::english, + LanguageCode::spanish, + LanguageCode::russian, + LanguageCode::french, + LanguageCode::chinese, + LanguageCode::polish, + LanguageCode::brazilian_portuguese, + LanguageCode::finnish, + LanguageCode::german, + LanguageCode::danish, + LanguageCode::korean }; EXPECT_EQ(codes, Language::codes); diff --git a/src/tests/backend/metadata/message_content_test.h b/src/tests/backend/metadata/message_content_test.h index b0fd9fb6..58c4960e 100644 --- a/src/tests/backend/metadata/message_content_test.h +++ b/src/tests/backend/metadata/message_content_test.h @@ -35,46 +35,46 @@ TEST(MessageContent, defaultConstructorShouldSetEmptyEnglishLanguageString) { MessageContent content; EXPECT_TRUE(content.GetText().empty()); - EXPECT_EQ(Language::Code::english, content.GetLanguage()); + EXPECT_EQ(LanguageCode::english, content.GetLanguage()); } TEST(MessageContent, contentConstructorShouldStoreGivenStringAndLanguage) { - MessageContent content("content", Language::Code::french); + MessageContent content("content", LanguageCode::french); EXPECT_EQ("content", content.GetText()); - EXPECT_EQ(Language::Code::french, content.GetLanguage()); + EXPECT_EQ(LanguageCode::french, content.GetLanguage()); } TEST(MessageContent, contentShouldBeEqualIfStringsAreCaseInsensitivelyEqual) { - MessageContent content1("content", Language::Code::english); - MessageContent content2("Content", Language::Code::french); + MessageContent content1("content", LanguageCode::english); + MessageContent content2("Content", LanguageCode::french); EXPECT_TRUE(content1 == content2); } TEST(MessageContent, contentShouldBeUnequalIfStringsAreNotCaseInsensitivelyEqual) { - MessageContent content1("content1", Language::Code::french); - MessageContent content2("content2", Language::Code::french); + MessageContent content1("content1", LanguageCode::french); + MessageContent content2("content2", LanguageCode::french); EXPECT_FALSE(content1 == content2); } TEST(MessageContent, LessThanOperatorShouldUseCaseInsensitiveLexicographicalComparison) { - MessageContent content1("content", Language::Code::english); - MessageContent content2("Content", Language::Code::french); + MessageContent content1("content", LanguageCode::english); + MessageContent content2("Content", LanguageCode::french); EXPECT_FALSE(content1 < content2); EXPECT_FALSE(content2 < content1); - content1 = MessageContent("content1", Language::Code::french); - content2 = MessageContent("content2", Language::Code::english); + content1 = MessageContent("content1", LanguageCode::french); + content2 = MessageContent("content2", LanguageCode::english); EXPECT_TRUE(content1 < content2); EXPECT_FALSE(content2 < content1); } TEST(MessageContent, emittingAsYamlShouldOutputDataCorrectly) { - MessageContent content("content", Language::Code::french); + MessageContent content("content", LanguageCode::french); YAML::Emitter emitter; emitter << content; @@ -83,12 +83,12 @@ TEST(MessageContent, emittingAsYamlShouldOutputDataCorrectly) { } TEST(MessageContent, encodingAsYamlShouldOutputDataCorrectly) { - MessageContent content("content", Language::Code::french); + MessageContent content("content", LanguageCode::french); YAML::Node node; node = content; EXPECT_EQ(content.GetText(), node["text"].as()); - EXPECT_EQ(Language(Language::Code::french).GetLocale(), node["lang"].as()); + EXPECT_EQ(Language(LanguageCode::french).GetLocale(), node["lang"].as()); } TEST(MessageContent, decodingFromYamlShouldSetDataCorrectly) { @@ -96,7 +96,7 @@ TEST(MessageContent, decodingFromYamlShouldSetDataCorrectly) { MessageContent content = node.as(); EXPECT_EQ("content", content.GetText()); - EXPECT_EQ(Language::Code::german, content.GetLanguage()); + EXPECT_EQ(LanguageCode::german, content.GetLanguage()); } TEST(MessageContent, decodingFromYamlScalarShouldThrow) { diff --git a/src/tests/backend/metadata/message_test.h b/src/tests/backend/metadata/message_test.h index 3896ff12..8b276cd2 100644 --- a/src/tests/backend/metadata/message_test.h +++ b/src/tests/backend/metadata/message_test.h @@ -52,7 +52,7 @@ TEST_P(MessageTest, defaultConstructorShouldCreateNoteWithNoContent) { } TEST_P(MessageTest, scalarContentConstructorShouldCreateAMessageWithASingleContentString) { - MessageContent content = MessageContent("content1", Language::Code::english); + MessageContent content = MessageContent("content1", LanguageCode::english); Message message(MessageType::warn, content.GetText(), "condition1"); EXPECT_EQ(MessageType::warn, message.GetType()); @@ -62,8 +62,8 @@ TEST_P(MessageTest, scalarContentConstructorShouldCreateAMessageWithASingleConte TEST_P(MessageTest, vectorContentConstructorShouldCreateAMessageWithGivenContentStrings) { MessageContents contents({ - MessageContent("content1", Language::Code::english), - MessageContent("content2", Language::Code::french), + MessageContent("content1", LanguageCode::english), + MessageContent("content2", LanguageCode::french), }); Message message(MessageType::error, contents, "condition1"); @@ -74,8 +74,8 @@ TEST_P(MessageTest, vectorContentConstructorShouldCreateAMessageWithGivenContent TEST_P(MessageTest, vectorContentConstructorShouldThrowIfMultipleContentStringsAreGivenAndNoneAreEnglish) { MessageContents contents({ - MessageContent("content1", Language::Code::german), - MessageContent("content2", Language::Code::french), + MessageContent("content1", LanguageCode::german), + MessageContent("content2", LanguageCode::french), }); EXPECT_ANY_THROW(Message(MessageType::error, contents, "condition1")); } @@ -88,15 +88,15 @@ TEST_P(MessageTest, messagesWithDifferentContentStringsShouldBeUnequal) { } TEST_P(MessageTest, messagesWithEqualContentStringsShouldBeEqual) { - Message message1(MessageType::say, MessageContents({MessageContent("content1", Language::Code::english)}), "condition1"); - Message message2(MessageType::warn, MessageContents({MessageContent("content1", Language::Code::french)}), "condition2"); + Message message1(MessageType::say, MessageContents({MessageContent("content1", LanguageCode::english)}), "condition1"); + Message message2(MessageType::warn, MessageContents({MessageContent("content1", LanguageCode::french)}), "condition2"); EXPECT_TRUE(message1 == message2); } TEST_P(MessageTest, LessThanOperatorShouldUseCaseInsensitiveLexicographicalContentStringComparison) { - Message message1(MessageType::say, MessageContents({MessageContent("content1", Language::Code::english)}), "condition1"); - Message message2(MessageType::warn, MessageContents({MessageContent("content1", Language::Code::french)}), "condition2"); + Message message1(MessageType::say, MessageContents({MessageContent("content1", LanguageCode::english)}), "condition1"); + Message message2(MessageType::warn, MessageContents({MessageContent("content1", LanguageCode::french)}), "condition2"); EXPECT_FALSE(message1 < message2); EXPECT_FALSE(message2 < message1); @@ -112,7 +112,7 @@ TEST_P(MessageTest, evalConditionShouldCreateADefaultContentObjectIfNoneExists) ASSERT_NO_THROW(game.Init(false, localPath)); Message message; - EXPECT_TRUE(message.EvalCondition(game, Language::Code::english)); + EXPECT_TRUE(message.EvalCondition(game, LanguageCode::english)); EXPECT_EQ(MessageContents({MessageContent()}), message.GetContent()); } @@ -122,25 +122,24 @@ TEST_P(MessageTest, evalConditionShouldSelectTheStringForTheGivenLanguageIfOneEx ASSERT_NO_THROW(game.Init(false, localPath)); Message message(MessageType::say, MessageContents({ - MessageContent("content1", Language::Code::german), - MessageContent("content2", Language::Code::english), - MessageContent("content3", Language::Code::french), + MessageContent("content1", LanguageCode::german), + MessageContent("content2", LanguageCode::english), + MessageContent("content3", LanguageCode::french), })); - EXPECT_TRUE(message.EvalCondition(game, Language::Code::french)); + EXPECT_TRUE(message.EvalCondition(game, LanguageCode::french)); EXPECT_EQ(1, message.GetContent().size()); - EXPECT_EQ(MessageContent("content3", Language::Code::french), message.GetContent()[0]); + EXPECT_EQ(MessageContent("content3", LanguageCode::french), message.GetContent()[0]); } TEST_P(MessageTest, evalConditionShouldLeaveTheContentUnchangedIfOnlyOneStringExists) { Game game(GetParam()); game.SetGamePath(dataPath.parent_path()); ASSERT_NO_THROW(game.Init(false, localPath)); - - MessageContent content("content1", Language::Code::english); + MessageContent content("content1", LanguageCode::english); Message message(MessageType::say, MessageContents({content})); - EXPECT_TRUE(message.EvalCondition(game, Language::Code::french)); + EXPECT_TRUE(message.EvalCondition(game, LanguageCode::french)); EXPECT_EQ(MessageContents({content}), message.GetContent()); } @@ -149,13 +148,13 @@ TEST_P(MessageTest, evalConditionShouldSelectTheEnglishStringIfNoStringExistsFor game.SetGamePath(dataPath.parent_path()); ASSERT_NO_THROW(game.Init(false, localPath)); - MessageContent content("content1", Language::Code::english); + MessageContent content("content1", LanguageCode::english); Message message(MessageType::say, MessageContents({ content, - MessageContent("content1", Language::Code::german), + MessageContent("content1", LanguageCode::german), })); - EXPECT_TRUE(message.EvalCondition(game, Language::Code::french)); + EXPECT_TRUE(message.EvalCondition(game, LanguageCode::french)); EXPECT_EQ(MessageContents({content}), message.GetContent()); } @@ -165,9 +164,9 @@ TEST_P(MessageTest, getTextShouldSelectTheEnglishStringIfThereAreMultipleContent ASSERT_NO_THROW(game.Init(false, localPath)); Message message(MessageType::say, MessageContents({ - MessageContent("content1", Language::Code::german), - MessageContent("content2", Language::Code::english), - MessageContent("content3", Language::Code::french), + MessageContent("content1", LanguageCode::german), + MessageContent("content2", LanguageCode::english), + MessageContent("content3", LanguageCode::french), })); EXPECT_EQ("content2", message.GetText()); @@ -179,7 +178,7 @@ TEST_P(MessageTest, getTextShouldSelectTheContentStringIfOnlyOneExists) { ASSERT_NO_THROW(game.Init(false, localPath)); Message message(MessageType::say, MessageContents({ - MessageContent("content1", Language::Code::german), + MessageContent("content1", LanguageCode::german), })); EXPECT_EQ("content1", message.GetText()); @@ -224,8 +223,8 @@ TEST_P(MessageTest, emittingAsYamlShouldOutputConditionIfItIsNotEmpty) { TEST_P(MessageTest, emittingAsYamlShouldOutputMultipleContentStringsAsAList) { Message message(MessageType::say, MessageContents({ - MessageContent("content1", Language::Code::english), - MessageContent("content2", Language::Code::german) + MessageContent("content1", LanguageCode::english), + MessageContent("content2", LanguageCode::german) })); YAML::Emitter emitter; emitter << message; @@ -288,8 +287,8 @@ TEST_P(MessageTest, encodingAsYamlShouldStoreASingleContentStringInAVector) { TEST_P(MessageTest, encodingAsYamlShouldMultipleContentStringsInAVector) { MessageContents contents({ - MessageContent("content1", Language::Code::english), - MessageContent("content2", Language::Code::french), + MessageContent("content1", LanguageCode::english), + MessageContent("content2", LanguageCode::french), }); Message message(MessageType::say, contents); YAML::Node node; @@ -351,7 +350,7 @@ TEST_P(MessageTest, decodingFromYamlShouldStoreAScalarContentValueCorrectly) { YAML::Node node = YAML::Load("type: say\n" "content: content1\n"); Message message = node.as(); - MessageContents expectedContent({MessageContent("content1", Language::Code::english)}); + MessageContents expectedContent({MessageContent("content1", LanguageCode::english)}); EXPECT_EQ(expectedContent, message.GetContent()); } @@ -366,8 +365,8 @@ TEST_P(MessageTest, decodingFromYamlShouldStoreAListOfContentStringsCorrectly) { Message message = node.as(); EXPECT_EQ(MessageContents({ - MessageContent("content1", Language::Code::english), - MessageContent("content2", Language::Code::german), + MessageContent("content1", LanguageCode::english), + MessageContent("content2", LanguageCode::german), }), message.GetContent()); } @@ -398,7 +397,7 @@ TEST_P(MessageTest, decodingFromYamlShouldApplySubstitutionsWhenThereIsOnlyOneCo " - sub1"); Message message = node.as(); - EXPECT_EQ(MessageContents({MessageContent("consub1tent1", Language::Code::english)}), message.GetContent()); + EXPECT_EQ(MessageContents({MessageContent("consub1tent1", LanguageCode::english)}), message.GetContent()); } TEST_P(MessageTest, decodingFromYamlShouldApplySubstitutionsToAllContentStrings) { @@ -413,8 +412,8 @@ TEST_P(MessageTest, decodingFromYamlShouldApplySubstitutionsToAllContentStrings) Message message = node.as(); EXPECT_EQ(MessageContents({ - MessageContent("content1 sub", Language::Code::english), - MessageContent("content2 sub", Language::Code::german), + MessageContent("content1 sub", LanguageCode::english), + MessageContent("content2 sub", LanguageCode::german), }), message.GetContent()); } @@ -433,7 +432,7 @@ TEST_P(MessageTest, decodingFromYamlShouldIgnoreSubstitutionSyntaxIfNoSubstituti "content: con%1%tent1\n"); Message message = node.as(); - EXPECT_EQ(MessageContents({MessageContent("con%1%tent1", Language::Code::english)}), message.GetContent()); + EXPECT_EQ(MessageContents({MessageContent("con%1%tent1", LanguageCode::english)}), message.GetContent()); } TEST_P(MessageTest, decodingFromYamlShouldThrowIfAnInvalidConditionIsGiven) { diff --git a/src/tests/backend/metadata/plugin_cleaning_data_test.h b/src/tests/backend/metadata/plugin_cleaning_data_test.h index 5f0e9d9c..6a490aa0 100644 --- a/src/tests/backend/metadata/plugin_cleaning_data_test.h +++ b/src/tests/backend/metadata/plugin_cleaning_data_test.h @@ -35,7 +35,7 @@ namespace test { class PluginCleaningDataTest : public BaseGameTest { protected: PluginCleaningDataTest() : info_(std::vector({ - MessageContent("info", Language::Code::english), + MessageContent("info", LanguageCode::english), })) {} const std::vector info_; @@ -150,37 +150,37 @@ TEST_P(PluginCleaningDataTest, evalConditionShouldBeFalseIfAnEmptyPluginFilename TEST_P(PluginCleaningDataTest, chooseInfoShouldCreateADefaultContentObjectIfNoneExists) { PluginCleaningData dirtyInfo(0xDEADBEEF, "cleaner", std::vector(), 2, 10, 30); - EXPECT_EQ(MessageContent(), dirtyInfo.ChooseInfo(Language::Code::english)); + EXPECT_EQ(MessageContent(), dirtyInfo.ChooseInfo(LanguageCode::english)); } TEST_P(PluginCleaningDataTest, chooseInfoShouldLeaveTheContentUnchangedIfOnlyOneStringExists) { PluginCleaningData dirtyInfo(0xDEADBEEF, "cleaner", info_, 2, 10, 30); - EXPECT_EQ(info_[0], dirtyInfo.ChooseInfo(Language::Code::french)); - EXPECT_EQ(info_[0], dirtyInfo.ChooseInfo(Language::Code::english)); + EXPECT_EQ(info_[0], dirtyInfo.ChooseInfo(LanguageCode::french)); + EXPECT_EQ(info_[0], dirtyInfo.ChooseInfo(LanguageCode::english)); } TEST_P(PluginCleaningDataTest, chooseInfoShouldSelectTheEnglishStringIfNoStringExistsForTheGivenLanguage) { - MessageContent content("content1", Language::Code::english); + MessageContent content("content1", LanguageCode::english); std::vector info({ content, - MessageContent("content1", Language::Code::german), + MessageContent("content1", LanguageCode::german), }); PluginCleaningData dirtyInfo(0xDEADBEEF, "cleaner", info, 2, 10, 30); - EXPECT_EQ(content, dirtyInfo.ChooseInfo(Language::Code::french)); + EXPECT_EQ(content, dirtyInfo.ChooseInfo(LanguageCode::french)); } TEST_P(PluginCleaningDataTest, chooseInfoShouldSelectTheStringForTheGivenLanguageIfOneExists) { - MessageContent french("content3", Language::Code::french); + MessageContent french("content3", LanguageCode::french); std::vector info({ - MessageContent("content1", Language::Code::german), - MessageContent("content2", Language::Code::english), + MessageContent("content1", LanguageCode::german), + MessageContent("content2", LanguageCode::english), french, }); PluginCleaningData dirtyInfo(0xDEADBEEF, "cleaner", info, 2, 10, 30); - EXPECT_EQ(french, dirtyInfo.ChooseInfo(Language::Code::french)); + EXPECT_EQ(french, dirtyInfo.ChooseInfo(LanguageCode::french)); } TEST_P(PluginCleaningDataTest, emittingAsYamlShouldOutputAllNonZeroCounts) { diff --git a/src/tests/backend/metadata/plugin_metadata_test.h b/src/tests/backend/metadata/plugin_metadata_test.h index f9301619..72b6f22f 100644 --- a/src/tests/backend/metadata/plugin_metadata_test.h +++ b/src/tests/backend/metadata/plugin_metadata_test.h @@ -34,7 +34,7 @@ namespace test { class PluginMetadataTest : public BaseGameTest { protected: PluginMetadataTest() : info_(std::vector({ - MessageContent("info", Language::Code::english), + MessageContent("info", LanguageCode::english), })) {} const std::vector info_; @@ -659,7 +659,7 @@ TEST_P(PluginMetadataTest, evalAllConditionsShouldEvaluateAllMetadataConditions) plugin.DirtyInfo({info1, info2}); plugin.CleanInfo({info1, info2}); - EXPECT_NO_THROW(plugin.EvalAllConditions(game, Language::Code::english)); + EXPECT_NO_THROW(plugin.EvalAllConditions(game, LanguageCode::english)); std::set expectedFiles({file1}); EXPECT_EQ(expectedFiles, plugin.LoadAfter()); diff --git a/src/tests/backend/metadata_list_test.h b/src/tests/backend/metadata_list_test.h index 8274b7e9..e93b191b 100644 --- a/src/tests/backend/metadata_list_test.h +++ b/src/tests/backend/metadata_list_test.h @@ -299,7 +299,7 @@ TEST_P(MetadataListTest, evalAllConditionsShouldEvaluateTheConditionsForThePlugi ASSERT_EQ(blankEsp, plugin.Name()); ASSERT_FALSE(plugin.HasNameOnly()); - EXPECT_NO_THROW(metadataList.EvalAllConditions(game, Language::Code::english)); + EXPECT_NO_THROW(metadataList.EvalAllConditions(game, LanguageCode::english)); plugin = metadataList.FindPlugin(PluginMetadata(blankEsm)); EXPECT_EQ(std::list({ diff --git a/src/tests/backend/plugin/plugin_sorter_test.h b/src/tests/backend/plugin/plugin_sorter_test.h index 2a20474a..4d7143d0 100644 --- a/src/tests/backend/plugin/plugin_sorter_test.h +++ b/src/tests/backend/plugin/plugin_sorter_test.h @@ -53,7 +53,7 @@ INSTANTIATE_TEST_CASE_P(, TEST_P(PluginSorterTest, sortingWithNoLoadedPluginsShouldReturnAnEmptyList) { PluginSorter sorter; - std::vector sorted = sorter.Sort(game_, Language::Code::english); + std::vector sorted = sorter.Sort(game_, LanguageCode::english); EXPECT_TRUE(sorted.empty()); } @@ -64,11 +64,11 @@ TEST_P(PluginSorterTest, sortingShouldNotMakeUnnecessaryChangesToAnExistingLoadO PluginSorter ps; std::vector expectedSortedOrder = getLoadOrder(); - std::vector sorted = ps.Sort(game_, Language::Code::english); + std::vector sorted = ps.Sort(game_, LanguageCode::english); EXPECT_TRUE(std::equal(begin(sorted), end(sorted), begin(expectedSortedOrder))); // Check stability. - sorted = ps.Sort(game_, Language::Code::english); + sorted = ps.Sort(game_, LanguageCode::english); EXPECT_TRUE(std::equal(begin(sorted), end(sorted), begin(expectedSortedOrder))); } @@ -78,7 +78,7 @@ TEST_P(PluginSorterTest, sortingShouldClearExistingGameMessages) { ASSERT_FALSE(game_.GetMessages().empty()); PluginSorter ps; - std::vector sorted = ps.Sort(game_, Language::Code::english); + std::vector sorted = ps.Sort(game_, LanguageCode::english); EXPECT_TRUE(game_.GetMessages().empty()); } @@ -91,7 +91,7 @@ TEST_P(PluginSorterTest, failedSortShouldNotClearExistingGameMessages) { ASSERT_FALSE(game_.GetMessages().empty()); PluginSorter ps; - EXPECT_ANY_THROW(ps.Sort(game_, Language::Code::english)); + EXPECT_ANY_THROW(ps.Sort(game_, LanguageCode::english)); EXPECT_FALSE(game_.GetMessages().empty()); } @@ -116,7 +116,7 @@ TEST_P(PluginSorterTest, sortingShouldEvaluateRelativeGlobalPriorities) { blankDifferentPluginDependentEsp, }); - std::vector sorted = ps.Sort(game_, Language::Code::english); + std::vector sorted = ps.Sort(game_, LanguageCode::english); EXPECT_TRUE(std::equal(begin(sorted), end(sorted), begin(expectedSortedOrder))); } @@ -166,7 +166,7 @@ TEST_P(PluginSorterTest, sortingWithGlobalPrioritiesShouldInheritRecursivelyRega blankDifferentPluginDependentEsp, }); - std::vector sorted = ps.Sort(game_, Language::Code::english); + std::vector sorted = ps.Sort(game_, LanguageCode::english); EXPECT_TRUE(std::equal(begin(sorted), end(sorted), begin(expectedSortedOrder))); } @@ -194,7 +194,7 @@ TEST_P(PluginSorterTest, sortingShouldUseLoadAfterMetadataWhenDecidingRelativePl blankPluginDependentEsp, }); - std::vector sorted = ps.Sort(game_, Language::Code::english); + std::vector sorted = ps.Sort(game_, LanguageCode::english); EXPECT_TRUE(std::equal(begin(sorted), end(sorted), begin(expectedSortedOrder))); } @@ -222,7 +222,7 @@ TEST_P(PluginSorterTest, sortingShouldUseRequirementMetadataWhenDecidingRelative blankPluginDependentEsp, }); - std::vector sorted = ps.Sort(game_, Language::Code::english); + std::vector sorted = ps.Sort(game_, LanguageCode::english); EXPECT_TRUE(std::equal(begin(sorted), end(sorted), begin(expectedSortedOrder))); } @@ -233,7 +233,7 @@ TEST_P(PluginSorterTest, sortingShouldThrowIfACyclicInteractionIsEncountered) { game_.GetUserlist().AddPlugin(plugin); PluginSorter ps; - EXPECT_ANY_THROW(ps.Sort(game_, Language::Code::english)); + EXPECT_ANY_THROW(ps.Sort(game_, LanguageCode::english)); } } } diff --git a/src/tests/backend/plugin/plugin_test.h b/src/tests/backend/plugin/plugin_test.h index 3cdfc23a..08707984 100644 --- a/src/tests/backend/plugin/plugin_test.h +++ b/src/tests/backend/plugin/plugin_test.h @@ -301,7 +301,7 @@ TEST_P(PluginTest, checkInstallValidityShouldCheckThatIncompatibilitiesAreAbsent TEST_P(PluginTest, checkInstallValidityShouldGenerateMessagesFromDirtyInfo) { const std::vector info = std::vector({ - MessageContent("info", Language::Code::english), + MessageContent("info", LanguageCode::english), }); Plugin plugin(game_, blankEsm, false);