public void TestChangeSeenFlag() { Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "*****@*****.**", "test"); SmtpClientSimulator.StaticSend("*****@*****.**", oAccount.Address, "Test", "test"); Pop3ClientSimulator.AssertMessageCount(oAccount.Address, "test", 1); var simulator = new ImapClientSimulator(); simulator.ConnectAndLogon(oAccount.Address, "test"); simulator.ExamineFolder("Inbox"); string flags = simulator.GetFlags(1); string body = simulator.Fetch("1 RFC822"); string flagsAfter = simulator.GetFlags(1); simulator.Close(); simulator.Disconnect(); Assert.AreEqual(flags, flagsAfter); var secondSimulator = new ImapClientSimulator(); secondSimulator.ConnectAndLogon(oAccount.Address, "test"); secondSimulator.SelectFolder("Inbox"); string secondFlags = secondSimulator.GetFlags(1); string secondBody = secondSimulator.Fetch("1 RFC822"); string secondFlagsAfter = secondSimulator.GetFlags(1); secondSimulator.Close(); secondSimulator.Disconnect(); Assert.AreNotEqual(secondFlags, secondFlagsAfter); }
public void ChangingFlagShouldAffectAllConnections() { var account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "*****@*****.**", "test"); SmtpClientSimulator.StaticSend(account.Address, account.Address, "Test", "Test"); Pop3ClientSimulator.AssertMessageCount(account.Address, "test", 1); var sim1 = new ImapClientSimulator(); Assert.IsTrue(sim1.ConnectAndLogon(account.Address, "test")); Assert.IsTrue(sim1.SelectFolder("Inbox")); var sim2 = new ImapClientSimulator(); Assert.IsTrue(sim2.ConnectAndLogon(account.Address, "test")); Assert.IsTrue(sim2.SelectFolder("Inbox")); sim1.SetFlagOnMessage(1, true, "\\Deleted"); var flags1 = sim1.GetFlags(1); var flags2 = sim2.GetFlags(1); Assert.IsTrue(flags2.Contains(@"* 1 FETCH (FLAGS (\Deleted))"), flags2); Assert.IsTrue(flags2.Contains(@"* 1 FETCH (FLAGS (\Deleted) UID 1)"), flags2); }