public void ParseMonthAndYear() { System.DateTime baseDateTime = System.DateTime.Now; NhsDate date = new NhsDate(baseDateTime); date.DateType = DateType.YearMonth; date.Year = 1974; date.Month = 3; NhsDate parsedDate; Assert.IsTrue(NhsDate.TryParseExact("jan-2008", out parsedDate, CultureInfo.InvariantCulture), "Try parse failed"); Assert.AreEqual(parsedDate.Month, 1, "Month not being parsed"); Assert.AreEqual(parsedDate.Year, 2008, "Month not being parsed"); Assert.IsTrue(NhsDate.TryParseExact("january-2008", out parsedDate, CultureInfo.InvariantCulture), "Try parse failed"); Assert.AreEqual(parsedDate.Month, 1, "Month not being parsed"); Assert.AreEqual(parsedDate.Year, 2008, "Month not being parsed"); Assert.IsTrue(NhsDate.TryParseExact("1-2008", out parsedDate, CultureInfo.InvariantCulture), "Try parse failed"); Assert.AreEqual(parsedDate.Month, 1, "Month not being parsed"); Assert.AreEqual(parsedDate.Year, 2008, "Month not being parsed"); Assert.IsTrue(NhsDate.TryParseExact("10-2008", out parsedDate, CultureInfo.InvariantCulture), "Try parse failed"); Assert.AreEqual(parsedDate.Month, 10, "Month not being parsed"); Assert.AreEqual(parsedDate.Year, 2008, "Month not being parsed"); Assert.IsTrue(NhsDate.TryParseExact(date.ToString(), out parsedDate, CultureInfo.InvariantCulture), string.Format(CultureInfo.InvariantCulture, "TryParse failed with date, {0}", date.ToString())); Assert.AreEqual(date.Month, parsedDate.Month, "Parse did not error but Month does not match"); Assert.AreEqual(date.DateType, parsedDate.DateType, "Parse did not error but DateType does not match"); Assert.AreEqual(date.Year, parsedDate.Year, "Parse did not error but Year does not match"); }
/// <summary> /// Check if the ControlToValidate is valid /// </summary> /// <returns>True if control properties is valid</returns> protected override bool EvaluateIsValid() { string value = this.GetControlValidationValue(this.ControlToValidate); DateInputBox control = this.NamingContainer.FindControl(this.ControlToValidate) as DateInputBox; if (value.Length == 0) { return(true); } if (value == this.WatermarkText) { // Essentially box is empty so return valid return(true); } // Don't raise an error for Today, Tomorrow if value is also the same. if (value == control.Value.ToString(control.DisplayDayOfWeek, false, control.DisplayDateAsText, CultureInfo.CurrentCulture)) { return(true); } NhsDate tryParseResult; if (!NhsDate.TryParseExact(value, out tryParseResult, System.Threading.Thread.CurrentThread.CurrentCulture)) { control.Value.DateType = DateType.Null; return(false); } return(true); }
/// <summary> /// Check if the ControlToValidate is valid /// </summary> /// <returns>True if control properties is valid</returns> protected override bool EvaluateIsValid() { string value = this.GetControlValidationValue(this.ControlToValidate); NhsDate tryParseResult; return(NhsDate.TryParseExact(value, out tryParseResult, System.Threading.Thread.CurrentThread.CurrentCulture)); }
public void TryParseFailures() { NhsDate result; Assert.IsFalse(NhsDate.TryParseExact("31-12", out result, CultureInfo.CurrentCulture)); Assert.IsFalse(NhsDate.TryParseExact("01-2008", out result, CultureInfo.CurrentCulture)); Assert.IsFalse(NhsDate.TryParseExact("-12", out result, CultureInfo.CurrentCulture)); }
public void ParseDateText() { NhsDate date = new NhsDate("26-March-1974"); NhsDate parsedDate; Assert.IsTrue(NhsDate.TryParseExact(date.ToString(), out parsedDate, CultureInfo.InvariantCulture), string.Format(CultureInfo.InvariantCulture, "TryParse failed with date, {0}", date.ToString())); Assert.AreEqual(date.DateType, parsedDate.DateType, "Parse did not error but DateType does not match"); Assert.AreEqual(date.DateValue, parsedDate.DateValue, "Parse did not error but DateValue does not match"); }
public void ParseInvalidNullIndex() { NhsDate parsedDate; string invalidNullIndexString = "Null:-256"; Assert.IsFalse(NhsDate.TryParseExact(invalidNullIndexString, out parsedDate, CultureInfo.InvariantCulture), string.Format(CultureInfo.InvariantCulture, "TryParse failed to return false with string of, {0}", invalidNullIndexString)); invalidNullIndexString = "Null:124"; Assert.IsFalse(NhsDate.TryParseExact(invalidNullIndexString, out parsedDate, CultureInfo.InvariantCulture), string.Format(CultureInfo.InvariantCulture, "TryParse failed to return false with string of, {0}", invalidNullIndexString)); }
public void ParseNullIndex() { NhsDate date = new NhsDate(); date.DateType = DateType.NullIndex; date.NullIndex = 14; // Muddy the water by assigning Month and year date.Year = 2007; date.Month = 3; NhsDate parsedDate; Assert.IsTrue(NhsDate.TryParseExact(date.ToString(), out parsedDate, CultureInfo.InvariantCulture), string.Format(CultureInfo.InvariantCulture, "TryParse failed with date, {0}", date.ToString())); Assert.AreEqual(date.DateType, parsedDate.DateType, "Parse did not error but DateType does not match"); Assert.AreEqual(date.NullIndex, parsedDate.NullIndex, "Parse did not error but NullIndex does not match"); }