In fixed mode, fix the iid type of the component JID
This commit is contained in:
+2
-1
@@ -35,7 +35,8 @@ Iid::Iid(const std::string& iid, const Bridge *bridge)
|
|||||||
|
|
||||||
void Iid::set_type(const std::set<char>& chantypes)
|
void Iid::set_type(const std::set<char>& chantypes)
|
||||||
{
|
{
|
||||||
if (this->local.empty() && this->server.empty())
|
if (this->local.empty() && (
|
||||||
|
!Config::get("fixed_irc_server", "").empty() || this->server.empty()))
|
||||||
this->type = Iid::Type::None;
|
this->type = Iid::Type::None;
|
||||||
if (this->local.empty())
|
if (this->local.empty())
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -125,4 +125,10 @@ TEST_CASE("Iid creation in fixed_server mode")
|
|||||||
CHECK(iid6.get_local() == "##channel%");
|
CHECK(iid6.get_local() == "##channel%");
|
||||||
CHECK(iid6.get_server() == "fixed.example.com");
|
CHECK(iid6.get_server() == "fixed.example.com");
|
||||||
CHECK(iid6.type == Iid::Type::Channel);
|
CHECK(iid6.type == Iid::Type::Channel);
|
||||||
|
|
||||||
|
Iid iid7("", chantypes);
|
||||||
|
CHECK(std::to_string(iid7) == "");
|
||||||
|
CHECK(iid7.get_local() == "");
|
||||||
|
CHECK(iid7.get_server() == "fixed.example.com");
|
||||||
|
CHECK(iid7.type == Iid::Type::None);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user