本文整理汇总了C#中RegressionTests.Shared.SMTPClientSimulator.Disconnect方法的典型用法代码示例。如果您正苦于以下问题:C# SMTPClientSimulator.Disconnect方法的具体用法?C# SMTPClientSimulator.Disconnect怎么用?C# SMTPClientSimulator.Disconnect使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RegressionTests.Shared.SMTPClientSimulator
的用法示例。
在下文中一共展示了SMTPClientSimulator.Disconnect方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestTooManyInvalidCommandsTempError
public void TestTooManyInvalidCommandsTempError()
{
Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
for (int i = 0; i < 10; i++)
SingletonProvider<TestSetup>.Instance.AddAccount(_domain, string.Format("test{0}@test.com", i), "test");
Application application = SingletonProvider<TestSetup>.Instance.GetApp();
Settings settings = _settings;
settings.DisconnectInvalidClients = true;
settings.MaxNumberOfInvalidCommands = 5;
settings.AntiSpam.GreyListingEnabled = true;
var sim = new SMTPClientSimulator();
sim.Connect();
string res = sim.Receive();
sim.Send("EHLO test.com\r\n");
res = sim.Receive();
sim.Send("MAIL FROM: <[email protected]>\r\n");
res = sim.Receive();
for (int i = 1; i < 10; i++)
{
string address = string.Format("test{0}@test.com", i);
sim.Send("RCPT TO: " + address + "\r\n");
res = sim.Receive();
CustomAssert.AreEqual("451 Please try again later.\r\n", res);
}
sim.Disconnect();
}
示例2: TestSameRecipientMultipleTimes
public void TestSameRecipientMultipleTimes()
{
Logging logging = SingletonProvider<TestSetup>.Instance.GetApp().Settings.Logging;
logging.AWStatsEnabled = true;
logging.Enabled = true;
if (File.Exists(logging.CurrentAwstatsLog))
File.Delete(logging.CurrentAwstatsLog);
Account account1 = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
var oSMTP = new SMTPClientSimulator();
oSMTP.Connect();
CustomAssert.IsTrue(oSMTP.Receive().StartsWith("220"));
oSMTP.Send("HELO test\r\n");
CustomAssert.IsTrue(oSMTP.Receive().StartsWith("250"));
oSMTP.Send("MAIL FROM: [email protected]\r\n");
CustomAssert.IsTrue(oSMTP.Receive().StartsWith("250"));
oSMTP.Send("RCPT TO: [email protected]\r\n");
CustomAssert.IsTrue(oSMTP.Receive().StartsWith("250"));
oSMTP.Send("RCPT TO: [email protected]\r\n");
CustomAssert.IsTrue(oSMTP.Receive().StartsWith("250"));
oSMTP.Disconnect();
}
示例3: TestRcptToSyntax
public void TestRcptToSyntax()
{
Account account1 = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
var oSMTP = new SMTPClientSimulator();
oSMTP.Connect();
CustomAssert.IsTrue(oSMTP.Receive().StartsWith("220"));
oSMTP.Send("HELO test\r\n");
CustomAssert.IsTrue(oSMTP.Receive().StartsWith("250"));
// A few tests of invalid syntax.
CustomAssert.IsTrue(oSMTP.SendAndReceive("MAIL FROM: <[email protected]>\r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("RCPT TO: [email protected]>\r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("RCPT TO: <[email protected]\r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("RCPT TO <[email protected]\r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("RCPT TO<[email protected]\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("RCPT TO: <[email protected]>\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("RCPT TO: [email protected]\r\n").StartsWith("250"));
oSMTP.Disconnect();
}
示例4: TestMailFromSyntaxValidation
public void TestMailFromSyntaxValidation()
{
Account account1 = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
var oSMTP = new SMTPClientSimulator();
oSMTP.Connect();
CustomAssert.IsTrue(oSMTP.Receive().StartsWith("220"));
oSMTP.Send("HELO test\r\n");
CustomAssert.IsTrue(oSMTP.Receive().StartsWith("250"));
// A few tests of invalid syntax.
CustomAssert.IsFalse(oSMTP.SendAndReceive("MAIL FROM: <[email protected]\r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("MAIL FROM: [email protected]>\r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("MAIL FROM: < [email protected] \r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("MAIL FROM: < \r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("MAIL FROM: > \r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("MAIL FROM: <[email protected]\r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("MAIL FROM <[email protected]>\r\n").StartsWith("250"));
CustomAssert.IsFalse(oSMTP.SendAndReceive("MAIL FROM [email protected]\r\n").StartsWith("250"));
// Valid syntax, < and >
CustomAssert.IsTrue(oSMTP.SendAndReceive("MAIL FROM: <[email protected]>\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("RSET\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("MAIL FROM: [email protected]\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("RSET\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("MAIL FROM: [email protected] \r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("RSET\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("MAIL FROM:[email protected]\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("RSET\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("MAIL FROM:<[email protected]>\r\n").StartsWith("250"));
CustomAssert.IsTrue(oSMTP.SendAndReceive("RSET\r\n").StartsWith("250"));
oSMTP.Disconnect();
}
示例5: TestHelo
public void TestHelo()
{
var oSimulator = new SMTPClientSimulator();
oSimulator.Connect();
string sWelcome = oSimulator.Receive();
oSimulator.Send("HELO\r\n");
string sResponse = oSimulator.Receive();
if (!sResponse.StartsWith("501"))
throw new Exception("Invalid response to HELO");
oSimulator.Send("HELO \r\n");
sResponse = oSimulator.Receive();
if (!sResponse.StartsWith("501"))
throw new Exception("Invalid response to HELO");
oSimulator.Send("HELO TEST.COM\r\n");
sResponse = oSimulator.Receive();
if (!sResponse.StartsWith("250"))
throw new Exception("Invalid response to HELO");
oSimulator.Send("HELO TEST.COM\r\n");
sResponse = oSimulator.Receive();
if (!sResponse.StartsWith("250"))
throw new Exception("Invalid response to HELO");
oSimulator.Send("EHLO TEST.COM\r\n");
sResponse = oSimulator.Receive();
if (!sResponse.StartsWith("250"))
throw new Exception("Invalid response to HELO");
oSimulator.Send("EHLO TEST.COM\r\n");
sResponse = oSimulator.Receive();
if (!sResponse.StartsWith("250"))
throw new Exception("Invalid response to HELO");
oSimulator.Disconnect();
}
示例6: TestSMTPLogonFailure
public void TestSMTPLogonFailure()
{
_settings.AutoBanOnLogonFailure = true;
_settings.MaxInvalidLogonAttempts = 2;
_settings.MaxInvalidLogonAttemptsWithin = 5;
_settings.AutoBanMinutes = 3;
Account account = SingletonProvider<TestSetup>.Instance.AddAccount(_domain, "[email protected]", "test");
var sim = new SMTPClientSimulator();
//[email protected] / test
string errorMessage;
CustomAssert.IsTrue(sim.ConnectAndLogon("dGVzdEB0ZXN0LmNvbQ==", "dGVzdA==", out errorMessage));
sim.Disconnect();
// confirm that we can retrieve welcome message.
CustomAssert.IsTrue(sim.GetWelcomeMessage().StartsWith("220"));
// fail to log on 3 times.
for (int i = 0; i < 2; i++)
{
CustomAssert.IsFalse(sim.ConnectAndLogon("dGVzdEB0ZXN0LmNvbQ==", "Vaffe==", out errorMessage));
sim.Disconnect();
if (i == 2)
{
CustomAssert.IsTrue(errorMessage.Contains("Too many invalid logon attempts."));
}
}
CustomAssert.IsTrue(sim.GetWelcomeMessage().Length == 0);
string logText = TestSetup.ReadCurrentDefaultLog();
CustomAssert.IsTrue(logText.Contains("Blocked either by IP range or by connection limit."), logText);
}