public void TestConstructorWithStringAndExceptionArgument()
{
string msg = "MESSAGE";
Exception inner = new Exception();
SmtpException se;
se = new SmtpException(msg, inner);
Assert.NotNull(se.Data);
Assert.Equal(0, se.Data.Keys.Count);
Assert.Same(inner, se.InnerException);
Assert.Same(msg, se.Message);
Assert.Equal(SmtpStatusCode.GeneralFailure, se.StatusCode);
se = new SmtpException(msg, null);
Assert.NotNull(se.Data);
Assert.Equal(0, se.Data.Keys.Count);
Assert.Null(se.InnerException);
Assert.Same(msg, se.Message);
Assert.Equal(SmtpStatusCode.GeneralFailure, se.StatusCode);
se = new SmtpException((string)null, inner);
Assert.NotNull(se.Data);
Assert.Equal(0, se.Data.Keys.Count);
Assert.Same(inner, se.InnerException);
Assert.NotNull(se.Message);
Assert.Equal(new SmtpException((string)null).Message, se.Message);
Assert.Equal(SmtpStatusCode.GeneralFailure, se.StatusCode);
se = new SmtpException((string)null, (Exception)null);
Assert.NotNull(se.Data);
Assert.Equal(0, se.Data.Keys.Count);
Assert.Null(se.InnerException);
Assert.NotNull(se.Message);
Assert.Equal(new SmtpException((string)null).Message, se.Message);
Assert.Equal(SmtpStatusCode.GeneralFailure, se.StatusCode);
}
}