public void TestIdle() { _settings.IMAPIdleEnabled = true; Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "*****@*****.**", "test"); var oSimulator = new IMAPSimulator(); string sWelcomeMessage = oSimulator.Connect(); oSimulator.Logon(account.Address, "test"); Assert.IsTrue(oSimulator.SelectFolder("INBOX")); oSimulator.StartIdle(); if (oSimulator.GetPendingDataExists()) throw new Exception("Unexpected data exists"); // Send a message to this account. var oSMTP = new SMTPClientSimulator(); oSMTP.Send(account.Address, account.Address, "IDLE Test", "This is a test of IDLE"); string data; Assert.IsTrue(oSimulator.EndIdle(false, out data)); }
public void TestNotificationOnPOP3Deletion() { _settings.IMAPIdleEnabled = true; Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "*****@*****.**", "test"); SMTPClientSimulator.StaticSend(account.Address, account.Address, "Message 1", "Body 1"); SMTPClientSimulator.StaticSend(account.Address, account.Address, "Message 1", "Body 1"); POP3Simulator.AssertMessageCount(account.Address, "test", 2); var imapSimulator = new IMAPSimulator(); string sWelcomeMessage = imapSimulator.Connect(); Assert.IsTrue(imapSimulator.Logon("*****@*****.**", "test")); Assert.IsTrue(imapSimulator.SelectFolder("INBOX")); Assert.IsTrue(imapSimulator.StartIdle()); var sim = new POP3Simulator(); Assert.IsTrue(sim.ConnectAndLogon(account.Address, "test")); Assert.IsTrue(sim.DELE(1)); sim.QUIT(); Assert.IsTrue(imapSimulator.AssertPendingDataExists(), "No pending data exist"); string data = imapSimulator.Receive(); Assert.IsTrue(data.Contains("* 1 EXPUNGE"), "No expunge message"); Assert.IsFalse(imapSimulator.GetPendingDataExists(), "Pending data exists"); }