public void SmtpDate_ValidateTimeZoneOffsetValue_WithValidAndInvalidOffsets_ShouldReturnCorrectly()
{
var smtpDt = new SmtpDateTime(DateTime.Now);
bool positive;
int hours;
int minutes;
smtpDt.ValidateAndGetTimeZoneOffsetValues("+0000", out positive, out hours, out minutes);
smtpDt.ValidateAndGetTimeZoneOffsetValues("+9959", out positive, out hours, out minutes);
smtpDt.ValidateAndGetTimeZoneOffsetValues("-9959", out positive, out hours, out minutes);
smtpDt.ValidateAndGetTimeZoneOffsetValues("+0900", out positive, out hours, out minutes);
Assert.Throws<FormatException>(() => smtpDt.ValidateAndGetTimeZoneOffsetValues("+0080", out positive, out hours, out minutes));
Assert.Throws<FormatException>(() => smtpDt.ValidateAndGetTimeZoneOffsetValues("+-0045", out positive, out hours, out minutes));
Assert.Throws<FormatException>(() => smtpDt.ValidateAndGetTimeZoneOffsetValues("+10000", out positive, out hours, out minutes));
Assert.Throws<FormatException>(() => smtpDt.ValidateAndGetTimeZoneOffsetValues("-A000", out positive, out hours, out minutes));
}