本文整理汇总了C#中RegressionTests.Shared.ImapClientSimulator.SelectFolder方法的典型用法代码示例。如果您正苦于以下问题:C# ImapClientSimulator.SelectFolder方法的具体用法?C# ImapClientSimulator.SelectFolder怎么用?C# ImapClientSimulator.SelectFolder使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RegressionTests.Shared.ImapClientSimulator
的用法示例。
在下文中一共展示了ImapClientSimulator.SelectFolder方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestIMAPServer
public void TestIMAPServer()
{
LogHandler.DeleteCurrentDefaultLog();
Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
for (int i = 0; i < 30; i++)
{
try
{
var imapSim = new ImapClientSimulator(true, 14301);
imapSim.ConnectAndLogon(account.Address, "test");
Assert.IsTrue(imapSim.SelectFolder("Inbox"), "SelectInbox");
imapSim.CreateFolder("Test");
Assert.IsTrue(imapSim.SelectFolder("Test"), "SelectTest");
Assert.IsTrue(imapSim.Logout(), "Logout");
imapSim.Disconnect();
break;
}
catch (Exception)
{
if (i == 29)
throw;
}
}
}
示例2: TestDateSortOrder
public void TestDateSortOrder()
{
Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
var oSimulator = new ImapClientSimulator();
string sWelcomeMessage = oSimulator.Connect();
oSimulator.LogonWithLiteral("[email protected]", "test");
Assert.IsTrue(oSimulator.SelectFolder("Inbox"));
string response =
oSimulator.SendSingleCommandWithLiteral("A04 APPEND INBOX \"22-Feb-2008 22:00:00 +0200\" {37}",
"Date: Wed, 15 Dec 2010 13:00:00 +0000");
Assert.IsTrue(response.Contains("* 1 EXISTS"), response);
response = oSimulator.SendSingleCommandWithLiteral("A04 APPEND INBOX \"22-Feb-2008 21:00:00 +0200\" {37}",
"Date: Wed, 15 Dec 2010 14:00:00 +0000");
Assert.IsTrue(response.Contains("* 2 EXISTS"), response);
response = oSimulator.SendSingleCommandWithLiteral("A04 APPEND INBOX \"22-Feb-2008 20:00:00 +0200\" {37}",
"Date: Wed, 15 Dec 2010 12:00:00 +0000");
Assert.IsTrue(response.Contains("* 3 EXISTS"), response);
response = oSimulator.SendSingleCommandWithLiteral("A04 APPEND INBOX \"23-Feb-2008 01:30:23 +0200\" {37}",
"Date: Wed, 15 Dec 2010 11:00:00 +0000");
Assert.IsTrue(response.Contains("* 4 EXISTS"), response);
string sortDateResponse = oSimulator.SendSingleCommand("A10 SORT (DATE) US-ASCII ALL");
Assert.IsTrue(sortDateResponse.Contains(" 4 3 1 2"));
oSimulator.Disconnect();
}
示例3: RequestingSameHeaderFieldMultipleTimesShouldReturnItOnce
public void RequestingSameHeaderFieldMultipleTimesShouldReturnItOnce()
{
Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
string message = "From: Someone <[email protected]>" + Environment.NewLine +
"To: Someoen <[email protected]>" + Environment.NewLine +
"Date: Wed, 22 Apr 2009 11:05:09 \"GMT\"" + Environment.NewLine +
"Subject: SubjectText" + Environment.NewLine +
Environment.NewLine +
"Hello" + Environment.NewLine;
var smtpSimulator = new SmtpClientSimulator();
smtpSimulator.SendRaw(account.Address, account.Address, message);
Pop3ClientSimulator.AssertMessageCount(account.Address, "test", 1);
var oSimulator = new ImapClientSimulator();
string sWelcomeMessage = oSimulator.Connect();
oSimulator.Logon(account.Address, "test");
oSimulator.SelectFolder("INBOX");
string result = oSimulator.Fetch("1 BODY.PEEK[HEADER.FIELDS (Subject Subject)]");
oSimulator.Disconnect();
Assert.AreEqual(1, StringExtensions.Occurences(result, "SubjectText"));
}
示例4: IfInReplyToFieldContainsQuoteThenFetchHeadersShouldEncodeIt
public void IfInReplyToFieldContainsQuoteThenFetchHeadersShouldEncodeIt()
{
Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
string message = "From: Someone <[email protected]>" + Environment.NewLine +
"To: Someoen <[email protected]>" + Environment.NewLine +
"In-Reply-To: ShouldBeEncodedDueToQuote\"" + Environment.NewLine +
"Subject: Something" + Environment.NewLine +
Environment.NewLine +
"Hello" + Environment.NewLine;
var smtpSimulator = new SmtpClientSimulator();
smtpSimulator.SendRaw(account.Address, account.Address, message);
Pop3ClientSimulator.AssertMessageCount(account.Address, "test", 1);
var oSimulator = new ImapClientSimulator();
string sWelcomeMessage = oSimulator.Connect();
oSimulator.Logon(account.Address, "test");
oSimulator.SelectFolder("INBOX");
string result = oSimulator.Fetch("1 ENVELOPE");
oSimulator.Disconnect();
Assert.IsFalse(result.Contains("ShouldBeEncodedDueToQuote"));
}
示例5: TestNestedOrSearch
public void TestNestedOrSearch()
{
Application application = SingletonProvider<TestSetup>.Instance.GetApp();
Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
// Send a message to this account.
var smtpClientSimulator = new SmtpClientSimulator();
smtpClientSimulator.Send("[email protected]", "[email protected]", "Search test", "This is a test of IMAP Search");
ImapClientSimulator.AssertMessageCount(oAccount.Address, "test", "Inbox", 1);
var oSimulator = new ImapClientSimulator();
string sWelcomeMessage = oSimulator.Connect();
oSimulator.Logon("[email protected]", "test");
oSimulator.SelectFolder("INBOX");
string result =
oSimulator.SendSingleCommand("A4 SEARCH ALL OR OR SINCE 28-May-2008 SINCE 28-May-2008 SINCE 28-May-2008");
Assert.IsTrue(result.StartsWith("* SEARCH 1"), result);
result = oSimulator.SendSingleCommand("A4 SEARCH ALL OR SMALLER 1 LARGER 10000");
Assert.IsTrue(result.StartsWith("* SEARCH\r\n"), result);
result = oSimulator.SendSingleCommand("A4 SEARCH ALL OR OR SMALLER 1 LARGER 10000 SMALLER 10000");
Assert.IsTrue(result.StartsWith("* SEARCH 1\r\n"), result);
}
示例6: TestChangeSeenFlag
public void TestChangeSeenFlag()
{
Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
SmtpClientSimulator.StaticSend("[email protected]", 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);
}
示例7: TestChangeRecentFlag
public void TestChangeRecentFlag()
{
Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
SmtpClientSimulator.StaticSend("[email protected]", oAccount.Address, "Test", "test");
Pop3ClientSimulator.AssertMessageCount(oAccount.Address, "test", 1);
var simulator = new ImapClientSimulator();
simulator.ConnectAndLogon(oAccount.Address, "test");
string result = simulator.ExamineFolder("Inbox");
Assert.IsTrue(result.Contains("* 1 RECENT"), result);
simulator.Close();
simulator.Disconnect();
simulator = new ImapClientSimulator();
simulator.ConnectAndLogon(oAccount.Address, "test");
Assert.IsTrue(simulator.SelectFolder("Inbox", out result));
Assert.IsTrue(result.Contains("* 1 RECENT"), result);
simulator.Close();
simulator.Disconnect();
simulator = new ImapClientSimulator();
simulator.ConnectAndLogon(oAccount.Address, "test");
result = simulator.ExamineFolder("Inbox");
Assert.IsTrue(result.Contains("* 0 RECENT"), result);
simulator.Close();
simulator.Disconnect();
}
示例8: FolderMarkedAsReadOnlyWhenUserHasReadOnlyRights
public void FolderMarkedAsReadOnlyWhenUserHasReadOnlyRights()
{
Application application = SingletonProvider<TestSetup>.Instance.GetApp();
Account account1 = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
IMAPFolders publicFolders = _settings.PublicFolders;
IMAPFolder folder = publicFolders.Add("Share1");
folder.Save();
IMAPFolderPermission permission = folder.Permissions.Add();
permission.PermissionAccountID = account1.ID;
permission.PermissionType = eACLPermissionType.ePermissionTypeUser;
permission.set_Permission(eACLPermission.ePermissionLookup, true);
permission.set_Permission(eACLPermission.ePermissionRead, true);
permission.Save();
string selectResult = string.Empty;
var imapClientSimulator = new ImapClientSimulator();
imapClientSimulator.Connect();
imapClientSimulator.LogonWithLiteral(account1.Address, "test");
imapClientSimulator.SelectFolder("#Public.Share1", out selectResult);
imapClientSimulator.Disconnect();
Assert.IsTrue(selectResult.Contains("[READ-ONLY]"), selectResult);
Assert.IsFalse(selectResult.Contains("[READ-WRITE]"), selectResult);
}
示例9: TestAddMessage
public void TestAddMessage()
{
Application app = SingletonProvider<TestSetup>.Instance.GetApp();
Utilities utilities = app.Utilities;
Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
// Create a new folder.
IMAPFolder folder = account.IMAPFolders.get_ItemByName("INBOX");
folder.Save();
for (int i = 0; i < 3; i++)
{
hMailServer.Message message = folder.Messages.Add();
message.set_Flag(eMessageFlag.eMFSeen, true);
message.Save();
Pop3ClientSimulator.AssertMessageCount(account.Address, "test", ((i + 1)*2) - 1);
SmtpClientSimulator.StaticSend("[email protected]", account.Address, "Test", "Test");
Pop3ClientSimulator.AssertMessageCount(account.Address, "test", (i + 1)*2);
}
Pop3ClientSimulator.AssertMessageCount(account.Address, "test", 6);
var sim = new ImapClientSimulator();
sim.ConnectAndLogon(account.Address, "test");
sim.SelectFolder("Inbox");
string response = sim.Fetch("1:6 UID");
string[] lines = Strings.Split(response, Environment.NewLine, -1, CompareMethod.Text);
var uids = new List<string>();
foreach (string line in lines)
{
int paraPos = line.IndexOf("(");
int paraEndPos = line.IndexOf(")");
if (paraPos < 0 || paraEndPos < 0)
continue;
string paraContent = line.Substring(paraPos + 1, paraEndPos - paraPos - 1);
if (!uids.Contains(paraContent))
uids.Add(paraContent);
}
Assert.AreEqual(6, uids.Count);
// Make sure the UIDS are sorted properly by creating a copy, sort the copy
// and then compare to original.
var copy = new List<string>();
copy.InsertRange(0, uids);
copy.Sort();
Assert.AreEqual(copy, uids);
}
示例10: TestCreateFolderWithSlash
public void TestCreateFolderWithSlash()
{
Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
const string folderName = "ABC\\123";
var oSimulator = new ImapClientSimulator();
oSimulator.Connect();
oSimulator.Logon(oAccount.Address, "test");
Assert.IsTrue(oSimulator.CreateFolder(folderName));
Assert.IsTrue(oSimulator.List().Contains(folderName));
Assert.IsTrue(oSimulator.SelectFolder(folderName));
oSimulator.Disconnect();
}
示例11: ChangingFlagShouldAffectAllConnections
public void ChangingFlagShouldAffectAllConnections()
{
var account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "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);
}
示例12: TestAppendFolderNameInOctet
public void TestAppendFolderNameInOctet()
{
Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
var oSimulator = new ImapClientSimulator();
string sWelcomeMessage = oSimulator.Connect();
oSimulator.Logon("[email protected]", "test");
oSimulator.SelectFolder("INBOX");
oSimulator.CreateFolder("MONK");
oSimulator.SendRaw("A01 APPEND {4}\r\n");
string result = oSimulator.Receive();
Assert.IsTrue(result.StartsWith("+ Ready for additional command text."));
oSimulator.SendRaw("MONK (\\Seen) \"20-Jan-2009 12:59:50 +0100\" {5}\r\n");
result = oSimulator.Receive();
Assert.IsTrue(result.StartsWith("+ Ready for literal data"));
oSimulator.SendRaw("WOOOT\r\n");
result = oSimulator.Receive();
Assert.AreEqual("A01 OK APPEND completed\r\n", result);
}
示例13: TestDateSortOrderNonexistantDate
public void TestDateSortOrderNonexistantDate()
{
Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
var oSimulator = new ImapClientSimulator();
string sWelcomeMessage = oSimulator.Connect();
oSimulator.LogonWithLiteral("[email protected]", "test");
Assert.IsTrue(oSimulator.SelectFolder("Inbox"));
string response = oSimulator.SendSingleCommandWithLiteral(
"A04 APPEND INBOX \"22-Feb-2008 22:00:00 +0200\" {4}", "ABCD");
Assert.IsTrue(response.Contains("* 1 EXISTS"), response);
response = oSimulator.SendSingleCommandWithLiteral("A04 APPEND INBOX \"22-Feb-2008 21:00:00 +0200\" {4}",
"ABCD");
Assert.IsTrue(response.Contains("* 2 EXISTS"), response);
response = oSimulator.SendSingleCommandWithLiteral("A04 APPEND INBOX \"22-Feb-2008 20:00:00 +0200\" {4}",
"ABCD");
Assert.IsTrue(response.Contains("* 3 EXISTS"), response);
response = oSimulator.SendSingleCommandWithLiteral("A04 APPEND INBOX \"23-Feb-2008 01:30:23 +0200\" {4}",
"ABCD");
Assert.IsTrue(response.Contains("* 4 EXISTS"), response);
/*
* RFC 5256 "2.2. Sent Date" chapter. If the sent date cannot be determined (a Date: header is missing or cannot be parsed),
* the INTERNALDATE for that message is used as the sent date.
*/
string sortDateResponse = oSimulator.SendSingleCommand("A10 SORT (DATE) US-ASCII ALL");
string sortArivalDateResponse = oSimulator.SendSingleCommand("A10 SORT (ARRIVAL) US-ASCII ALL");
Assert.IsTrue(sortArivalDateResponse.Contains(" 3 2 1 4"));
Assert.AreEqual(sortDateResponse, sortArivalDateResponse);
oSimulator.Disconnect();
}
示例14: TestFolderExpungeNotification
public void TestFolderExpungeNotification()
{
Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
SmtpClientSimulator.StaticSend(account.Address, account.Address, "TestSubject", "TestBody");
ImapClientSimulator.AssertMessageCount(account.Address, "test", "Inbox", 1);
var simulator1 = new ImapClientSimulator();
var simulator2 = new ImapClientSimulator();
simulator1.ConnectAndLogon(account.Address, "test");
simulator2.ConnectAndLogon(account.Address, "test");
simulator1.SelectFolder("Inbox");
simulator2.SelectFolder("Inbox");
string result = simulator2.NOOP();
Assert.IsFalse(result.Contains("Deleted"));
Assert.IsFalse(result.Contains("Seen"));
simulator1.SetDeletedFlag(1);
simulator1.Expunge();
// the result may (should) come after the first NOOP response stream so do noop twice.
result = simulator2.NOOP() + simulator2.NOOP();
Assert.IsTrue(result.Contains("* 1 EXPUNGE"));
simulator1.Disconnect();
simulator2.Disconnect();
}
示例15: TestAppendFolderNameInOctetNoFlagList
public void TestAppendFolderNameInOctetNoFlagList()
{
Account oAccount = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
var oSimulator = new ImapClientSimulator();
string sWelcomeMessage = oSimulator.Connect();
oSimulator.Logon("[email protected]", "test");
oSimulator.SelectFolder("INBOX");
oSimulator.CreateFolder("MONK");
oSimulator.SendRaw("A01 APPEND {4}\r\n");
string result = oSimulator.Receive();
Assert.IsTrue(result.StartsWith("+ Ready for additional command text."));
oSimulator.SendRaw("MONK \"12-Jan-2009 12:12:12 +0100\" {5}\r\n");
result = oSimulator.Receive();
Assert.IsTrue(result.StartsWith("+ Ready for literal data"));
oSimulator.SendRaw("WOOOT\r\n");
result = oSimulator.Receive();
Assert.AreEqual("A01 OK APPEND completed\r\n", result);
DateTime date = Convert.ToDateTime(oAccount.IMAPFolders.get_ItemByName("MONK").Messages[0].InternalDate);
Assert.AreEqual(2009, date.Year);
Assert.AreEqual(12, date.Day);
Assert.AreEqual(1, date.Month);
}