IRC parsing, tokenization, and state handling in C#
1namespace IRCSharp.Tests.State;
2
3public class Sasl
4{
5 private readonly Server _server = new("test");
6
7 public Sasl()
8 {
9 _server.Parse(new Line("900 * nick!user@host account"));
10 }
11
12 [Test]
13 public async Task LoggedIn()
14 {
15 await Assert.That(_server.NickName).IsEqualTo("nick");
16 await Assert.That(_server.UserName).IsEqualTo("user");
17 await Assert.That(_server.HostName).IsEqualTo("host");
18 await Assert.That(_server.Account).IsEqualTo("account");
19 }
20
21 [Test]
22 public async Task LoggedOut()
23 {
24 _server.Parse(new Line("901 * nick1!user1@host1"));
25
26 await Assert.That(_server.NickName).IsEqualTo("nick1");
27 await Assert.That(_server.UserName).IsEqualTo("user1");
28 await Assert.That(_server.HostName).IsEqualTo("host1");
29 await Assert.That(_server.Account).IsNull();
30 }
31}