public void TestMetaDataSortCC() { Application application = SingletonProvider<TestSetup>.Instance.GetApp(); Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "meta'*****@*****.**", "test"); // disable... SendMessage("Test C", "Body", "", "ÄÄÄ"); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 1); SendMessage("Test B", "Body", "", "ÖÖÖ"); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 2); SendMessage("Test A", "Body", "", "ÅÅÅ"); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 3); AssertAllMessagesIndexed(); var sim = new ImapClientSimulator(account.Address, "test", "Inbox"); string result = sim.Sort("(CC) UTF-8 ALL"); Assert.AreEqual("3 1 2", result); // Disable the indexing functionality _indexing.Enabled = false; _indexing.Clear(); // Make sure the sort order is the same. string resultAfter = sim.Sort("(CC) UTF-8 ALL"); Assert.AreEqual(result, resultAfter); }
public void TestSubjectSearchValueWithParanthesis() { Domain oDomain = _application.Domains[0]; Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "*****@*****.**", "test"); // Send a message to this account. var smtpClientSimulator = new SmtpClientSimulator(); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "Te(st1", "This is a test of IMAP Search"); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 1); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "Te)st2", "This is a test of IMAP Search"); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 2); var oSimulator = new ImapClientSimulator(); string sWelcomeMessage = oSimulator.Connect(); oSimulator.Logon("*****@*****.**", "test"); Assert.IsTrue(oSimulator.SelectFolder("INBOX")); Assert.AreEqual("1", oSimulator.Sort("(SUBJECT) UTF-8 ALL HEADER SUBJECT \"Te(st1\"")); Assert.AreEqual("2", oSimulator.Sort("(SUBJECT) UTF-8 ALL HEADER SUBJECT \"Te)st2\"")); }
public void TestSortSubjectSearch() { Domain oDomain = _application.Domains[0]; Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "*****@*****.**", "test"); // Send a message to this account. var smtpClientSimulator = new SmtpClientSimulator(); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "aa", "This is a test of IMAP Search"); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 1); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "bb", "This is a test of IMAP Search"); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 2); var oSimulator = new ImapClientSimulator(); string sWelcomeMessage = oSimulator.Connect(); oSimulator.Logon("*****@*****.**", "test"); Assert.IsTrue(oSimulator.SelectFolder("INBOX")); Assert.AreEqual("1 2", oSimulator.Sort("(DATE) UTF-8 ALL UNANSWERED OR HEADER SUBJECT aa HEADER SUBJECT bb")); Assert.AreEqual("1 2", oSimulator.Sort("(DATE) UTF-8 ALL UNANSWERED OR (HEADER SUBJECT aa) (HEADER SUBJECT bb)")); Assert.AreEqual("1 2", oSimulator.Sort("(DATE) UTF-8 ALL UNANSWERED (OR HEADER SUBJECT aa HEADER SUBJECT bb)")); Assert.AreEqual("1", oSimulator.Sort("(DATE) UTF-8 ALL UNANSWERED OR HEADER SUBJECT aa HEADER SUBJECT cc")); Assert.AreEqual("1", oSimulator.Sort("(DATE) UTF-8 ALL UNANSWERED OR (HEADER SUBJECT aa) (HEADER SUBJECT cc)")); Assert.AreEqual("1", oSimulator.Sort("(DATE) UTF-8 ALL UNANSWERED (OR HEADER SUBJECT aa HEADER SUBJECT cc)")); Assert.AreEqual("2", oSimulator.Sort("(DATE) UTF-8 ALL UNANSWERED OR HEADER SUBJECT bb HEADER SUBJECT cc")); Assert.AreEqual("2", oSimulator.Sort("(DATE) UTF-8 ALL UNANSWERED OR (HEADER SUBJECT bb) (HEADER SUBJECT cc)")); Assert.AreEqual("2", oSimulator.Sort("(DATE) UTF-8 ALL UNANSWERED (OR HEADER SUBJECT bb HEADER SUBJECT cc)")); }
public void TestSortReverseSize() { Domain oDomain = _application.Domains[0]; Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "*****@*****.**", "test"); var longBodyString = new StringBuilder(); longBodyString.Append('A', 10000); // Send a message to this account. var smtpClientSimulator = new SmtpClientSimulator(); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "Test1", longBodyString.ToString()); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 1); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "Test2", "Test body"); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 2); var oSimulator = new ImapClientSimulator(); string sWelcomeMessage = oSimulator.Connect(); oSimulator.Logon("*****@*****.**", "test"); Assert.IsTrue(oSimulator.SelectFolder("INBOX")); Assert.AreEqual("2 1", oSimulator.Sort("(SIZE) UTF-8 ALL")); Assert.AreEqual("1 2", oSimulator.Sort("(REVERSE SIZE) UTF-8 ALL")); }
public void TestSortReverseArrival() { Domain oDomain = _application.Domains[0]; Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "*****@*****.**", "test"); // Send a message to this account. var smtpClientSimulator = new SmtpClientSimulator(); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "Test1", "This is a test of IMAP Search"); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 1); // The two messages needs to be sent a second apart, so we actually need to pause a bit here. Thread.Sleep(1000); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "Test2", "This is a test of IMAP Search"); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 2); var oSimulator = new ImapClientSimulator(); string sWelcomeMessage = oSimulator.Connect(); oSimulator.Logon("*****@*****.**", "test"); Assert.IsTrue(oSimulator.SelectFolder("INBOX")); Assert.AreEqual("1 2", oSimulator.Sort("(ARRIVAL) UTF-8 ALL")); Assert.AreEqual("2 1", oSimulator.Sort("(REVERSE ARRIVAL) UTF-8 ALL")); }
public void TestSortDeletedOrAnswered() { Domain oDomain = _application.Domains[0]; Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "*****@*****.**", "test"); // Send a message to this account. var smtpClientSimulator = new SmtpClientSimulator(); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "aa", "This is a test of IMAP Search"); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 1); smtpClientSimulator.Send("*****@*****.**", "*****@*****.**", "bb", "This is a test of IMAP Search"); ImapClientSimulator.AssertMessageCount("*****@*****.**", "test", "INBOX", 2); var oSimulator = new ImapClientSimulator(); string sWelcomeMessage = oSimulator.Connect(); oSimulator.Logon("*****@*****.**", "test"); Assert.IsTrue(oSimulator.SelectFolder("INBOX")); Assert.AreEqual("", oSimulator.Sort("(DATE) UTF-8 ALL OR ANSWERED DELETED")); }
public void TestMetaDataSortSubjectTurkish() { Application application = SingletonProvider<TestSetup>.Instance.GetApp(); Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "meta'*****@*****.**", "test"); // disable... SendMessage("Test Ç", "Body", "", ""); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 1); // pos: 4 SendMessage("Test C", "Body", "", ""); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 2); // pos: 3 SendMessage("Test B", "Body", "", ""); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 3); // pos: 2 SendMessage("Test Ğ", "Body", "", ""); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 4); // pos: 9 SendMessage("Test G", "Body", "", ""); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 5); // pos: 8 AssertAllMessagesIndexed(); var sim = new ImapClientSimulator(account.Address, "test", "Inbox"); string result = sim.Sort("(SUBJECT) UTF-8 ALL"); Assert.AreEqual("3 2 1 5 4", result); // Disable the indexing functionality _indexing.Enabled = false; _indexing.Clear(); // Make sure the sort order is the same. string resultAfter = sim.Sort("(SUBJECT) UTF-8 ALL"); Assert.AreEqual(result, resultAfter); }
public void TestMetaDataSortSubjectAnsi() { Application application = SingletonProvider<TestSetup>.Instance.GetApp(); Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "meta'*****@*****.**", "test"); // disable... SendMessage("Test 1", "Body", "", ""); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 1); SendMessage("Test 2", "Body", "", ""); ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 2); AssertAllMessagesIndexed(); var sim = new ImapClientSimulator(account.Address, "test", "Inbox"); string result = sim.Sort("(SUBJECT) UTF-8 ALL"); Assert.IsTrue(result.StartsWith("1 2")); // Disable the indexing functionality _indexing.Enabled = false; _indexing.Clear(); // Make sure the sort order is the same. string resultAfter = sim.Sort("(SUBJECT) UTF-8 ALL"); Assert.AreEqual(result, resultAfter); }