From 21f1e95fb8e935134a969bc3d729964d8d2aadfa Mon Sep 17 00:00:00 2001 From: Ben Harris Date: Thu, 14 May 2020 23:06:10 -0400 Subject: rename Irc to IRC --- IRCStates/Tests/Casemap.cs | 58 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 IRCStates/Tests/Casemap.cs (limited to 'IRCStates/Tests/Casemap.cs') diff --git a/IRCStates/Tests/Casemap.cs b/IRCStates/Tests/Casemap.cs new file mode 100644 index 0000000..4a02444 --- /dev/null +++ b/IRCStates/Tests/Casemap.cs @@ -0,0 +1,58 @@ +using IRCTokens; +using Microsoft.VisualStudio.TestTools.UnitTesting; + +namespace IRCStates.Tests +{ + [TestClass] + public class Casemap + { + [TestMethod] + public void Rfc1459() + { + var lower = IRCStates.Casemap.CaseFold(IRCStates.Casemap.CaseMapping.Rfc1459, @"ÀTEST[]~\"); + Assert.AreEqual("Àtest{}^|", lower); + } + + [TestMethod] + public void Ascii() + { + var lower = IRCStates.Casemap.CaseFold(IRCStates.Casemap.CaseMapping.Ascii, @"ÀTEST[]~\"); + Assert.AreEqual(@"Àtest[]~\", lower); + } + + [TestMethod] + public void CommandJoin() + { + var server = new Server("test"); + server.Parse(new Line("001 nickname")); + server.Parse(new Line(":Nickname JOIN #Chan")); + server.Parse(new Line(":Other JOIN #Chan")); + + Assert.IsTrue(server.Users.ContainsKey("nickname")); + Assert.IsFalse(server.Users.ContainsKey("Nickname")); + Assert.IsTrue(server.Users.ContainsKey("other")); + Assert.IsFalse(server.Users.ContainsKey("Other")); + Assert.IsTrue(server.Channels.ContainsKey("#chan")); + Assert.IsFalse(server.Channels.ContainsKey("#Chan")); + + var channel = server.Channels["#chan"]; + Assert.AreEqual("#Chan", channel.Name); + } + + [TestMethod] + public void CommandNick() + { + var server = new Server("test"); + server.Parse(new Line("001 nickname")); + server.Parse(new Line(":nickname JOIN #chan")); + var user = server.Users["nickname"]; + server.Parse(new Line(":nickname NICK NewNickname")); + Assert.AreEqual(1, server.Users.Count); + Assert.IsTrue(server.Users.ContainsKey("newnickname")); + Assert.AreEqual("NewNickname", user.NickName); + Assert.AreEqual("newnickname", user.NickNameLower); + Assert.AreEqual("NewNickname", server.NickName); + Assert.AreEqual("newnickname", server.NickNameLower); + } + } +} -- cgit 1.4.1