import virc.common : User; import std.range : only, takeNone; { auto reply = parseNumeric!(Numeric.RPL_WHOISACCOUNT)(only("someone", "whoisuser", "accountname", "is logged in as")); assert(reply.get.user == User("whoisuser")); assert(reply.get.account == "accountname"); } { immutable reply = parseNumeric!(Numeric.RPL_WHOISACCOUNT)(only("someone", "whoisuser", "accountname")); assert(reply.isNull); } { immutable reply = parseNumeric!(Numeric.RPL_WHOISACCOUNT)(only("someone", "whoisuser")); assert(reply.isNull); } { immutable reply = parseNumeric!(Numeric.RPL_WHOISACCOUNT)(only("someone")); assert(reply.isNull); } { immutable reply = parseNumeric!(Numeric.RPL_WHOISACCOUNT)(takeNone(only(""))); assert(reply.isNull); }
Parser for RPL_WHOISACCOUNT
Format is 330 <client> <nick> <account> :is logged in as