protected static void WeekCalendar(ref DateTime?date, out DateTime start, out DateTime end, UserContext context) { date = date ?? context.NowSchoolYearTime; var cal = new GregorianCalendar(); var today = date.Value; start = cal.AddDays(today, -((int)today.DayOfWeek)).Date; end = cal.AddDays(start, 6).Date; }
// Token: 0x0600015D RID: 349 RVA: 0x0000BAD0 File Offset: 0x00009CD0 public static void GetVisibleDateRange(ExDateTime month, out ExDateTime startDate, out ExDateTime endDate, ExTimeZone timeZone) { Calendar calendar = new GregorianCalendar(); int weekStartDay = (int)OwaContext.Current.SessionContext.WeekStartDay; ExDateTime exDateTime = new ExDateTime(timeZone, new DateTime(month.Year, month.Month, 1, 0, 0, 0, 0, calendar)); int dayOfWeek = (int)calendar.GetDayOfWeek((DateTime)exDateTime); int num = dayOfWeek - weekStartDay; num = ((num < 0) ? (7 + num) : num); startDate = new ExDateTime(timeZone, calendar.AddDays((DateTime)exDateTime, -1 * num)); endDate = new ExDateTime(timeZone, calendar.AddDays((DateTime)startDate, 41)); }
public static DateTime NextFriday(this DateTime dt) { var sunday = new GregorianCalendar().AddDays(dt, -((int)dt.DayOfWeek) + 7); var friday = sunday.AddDays(-2); return(friday); }
static void Main(string[] args) { DateTime dateTime = DateTime.Now; Console.WriteLine("Current Time is : {0:f}", dateTime); GregorianCalendar infol = new GregorianCalendar(GregorianCalendarTypes.TransliteratedEnglish); Console.WriteLine("Adjust the time : {0:F} ", infol.AddDays(dateTime, 4)); }
public static DateTime GetLastDayInWeek(int Year, int Week) { GregorianCalendar Calendar = new GregorianCalendar(GregorianCalendarTypes.USEnglish); DateTime FirstDay = new DateTime(Year, 1, 1); DateTime CurrentDay = Calendar.AddWeeks(FirstDay, Week); return(Calendar.AddDays(CurrentDay, 7 - (int)Calendar.GetDayOfWeek(CurrentDay) + 1)); }
/// <summary> /// Returns a DateTime that is the specified number of days away from /// the specified DateTime. /// </summary> /// <param name="day">The DateTime to which to add days.</param> /// <param name="days">The number of days to add.</param> /// <returns> /// The DateTime that results from adding the specified number of days /// to the specified DateTime. /// </returns> public override DateTime?AddDays(DateTime day, int days) { try { return(_calendar.AddDays(day, days)); } catch (ArgumentException) { return(null); } }
public async Task <List <IndicatorData> > NextWeek() { var dt = DateTime.Now; var dtSunday = new GregorianCalendar().AddDays(dt, -((int)dt.DayOfWeek) + 7); var dtFriday = dtSunday.AddDays(6); return(await this.dbContext.Set <IndicatorData>() .Where(r => r.ReleaseDateTime >= dtSunday && r.ReleaseDateTime <= dtFriday) .OrderBy(r => r.ReleaseDateTime) .ToListAsync()); }
public static DateTime?AddDays(DateTime time, int days) { System.Globalization.Calendar cal = new GregorianCalendar(); try { return(cal.AddDays(time, days)); } catch (ArgumentException) { return(null); } }
private CalculateNext GetNextMajorFunction() { // Create a function that, applied to a date/time, returns the // "next" value for major labels. CalculateNext NextMajor = null; if (axisType == AxisType.Quarters) { NextMajor = delegate(DateTime dt) { return(cal.AddMonths(dt, 3)); } } ; else if (axisType == AxisType.DailyWithHourlyTicks || axisType == AxisType.DailyWithHourlyLabels) { NextMajor = delegate(DateTime dt) { return(cal.AddDays(dt, 1)); } } ; else { NextMajor = delegate(DateTime dt) { return(cal.AddMonths(dt, 1)); } }; return(NextMajor); }
private DateTime GetNextRunDay(DateTime dateTime) { dateTime = dateTime.Date; // Enum.GetValues is not supported by compact framework. So we just hardcode in the range instead. // foreach ( DayOfWeek dayOfWeek in Enum.GetValues( typeof( DayOfWeek ) ) ) for (DayOfWeek day = dateTime.DayOfWeek; day <= DayOfWeek.Saturday; day++) { // If we encounter a next day of the week that we're supposed to run on, then if (Days[(int)day] == true) { return(SetToRunAtTime(dateTime)); } } // If we make it to here, then there were no more days in the current week that are marked for recurrence. // So instead, find the first day of the following week. // Advance 1 weeks into the future. DateTime nextRunDate = new GregorianCalendar().AddWeeks(dateTime.Date, 1); // Now back up to Sunday of that next week. nextRunDate = nextRunDate.AddDays(((int)nextRunDate.DayOfWeek - (int)DayOfWeek.Sunday) * -1); // Now, advance to the first day of the week that is marked for recurrence // Enum.GetValues is not supported by compact framework. So we just hardcode in the range instead. // foreach ( DayOfWeek dayOfWeek in Enum.GetValues( typeof( DayOfWeek ) ) ) for (DayOfWeek dayOfWeek = DayOfWeek.Sunday; dayOfWeek <= DayOfWeek.Saturday; dayOfWeek++) { if (Days[(int)dayOfWeek]) { return(SetToRunAtTime(nextRunDate.AddDays((int)dayOfWeek))); } } return(StartDateTime); }
protected IList <DateTime> GetWeekDates(ref DateTime?date, out DateTime start, out DateTime end) { var cal = new GregorianCalendar(); WeekCalendar(ref date, out start, out end); var res = new List <DateTime> { start }; for (var i = 1; i < 7; i++) { res.Add(cal.AddDays(start, i)); } return(res); }
private void InitializeDates() { Calendar calendar = new GregorianCalendar(); int weekStartDay = (int)this.sessionContext.WeekStartDay; this.firstDayInCurrentMonth = new DateTime(this.month.Year, this.month.Month, 1, 0, 0, 0, 0, calendar); int dayOfWeek = (int)calendar.GetDayOfWeek(this.firstDayInCurrentMonth); this.offset = dayOfWeek - weekStartDay; this.offset = ((this.offset < 0) ? (7 + this.offset) : this.offset); this.indexMonthStart = this.offset; this.startDate = new ExDateTime(this.sessionContext.TimeZone, calendar.AddDays(this.firstDayInCurrentMonth, -this.offset)); int daysInMonth = calendar.GetDaysInMonth(calendar.GetYear(this.firstDayInCurrentMonth), calendar.GetMonth(this.firstDayInCurrentMonth)); this.indexMonthEnd = this.offset + daysInMonth - 1; }
public override void SetUp() { base.SetUp(); directory = NewDirectory(); RandomIndexWriter writer = new RandomIndexWriter( #if FEATURE_INSTANCE_TESTDATA_INITIALIZATION this, #endif Random, directory); // we use the default Locale/TZ since LuceneTestCase randomizes it var cal = new GregorianCalendar().ToDateTime(2003, 1, 1, 0, 0, 0, 0); // 2003 January 01 cal = TimeZoneInfo.ConvertTime(cal, TimeZoneInfo.Local); for (int i = 0; i < Max; i++) { Document doc = new Document(); doc.Add(NewStringField("key", "" + (i + 1), Field.Store.YES)); doc.Add(NewStringField("owner", (i < Max / 2) ? "bob" : "sue", Field.Store.YES)); doc.Add(NewStringField("date", cal.ToString(CultureInfo.InvariantCulture), Field.Store.YES)); writer.AddDocument(doc); cal = cal.AddDays(1); } reader = writer.GetReader(); writer.Dispose(); searcher = NewSearcher(reader); // query for everything to make life easier BooleanQuery bq = new BooleanQuery(); bq.Add(new TermQuery(new Term("owner", "bob")), Occur.SHOULD); bq.Add(new TermQuery(new Term("owner", "sue")), Occur.SHOULD); query = bq; // date filter matches everything too //Date pastTheEnd = parseDate("2099 Jan 1"); // dateFilter = DateFilter.Before("date", pastTheEnd); // just treat dates as strings and select the whole range for now... dateFilter = TermRangeFilter.NewStringRange("date", "", "ZZZZ", true, true); bobFilter = new QueryWrapperFilter( new TermQuery(new Term("owner", "bob"))); sueFilter = new QueryWrapperFilter( new TermQuery(new Term("owner", "sue"))); }
private void InitializeDates() { this.currentDate = (DateTime)DateTimeUtilities.GetLocalTime(); Calendar calendar = new GregorianCalendar(); int weekStartDay = (int)this.owaContext.UserContext.UserOptions.WeekStartDay; this.firstDayInCurrentMonth = new DateTime(this.selectedDate.Year, this.selectedDate.Month, 1, 0, 0, 0, 0, calendar); int dayOfWeek = (int)calendar.GetDayOfWeek(this.firstDayInCurrentMonth); this.offset = dayOfWeek - weekStartDay; this.offset = ((this.offset < 0) ? (7 + this.offset) : this.offset); this.indexMonthStart = this.offset; this.startDate = calendar.AddDays(this.firstDayInCurrentMonth, -this.offset); int daysInMonth = calendar.GetDaysInMonth(calendar.GetYear(this.firstDayInCurrentMonth), calendar.GetMonth(this.firstDayInCurrentMonth)); this.indexMonthEnd = this.offset + daysInMonth - 1; }
public override void SetUp() { base.SetUp(); directory = NewDirectory(); RandomIndexWriter writer = new RandomIndexWriter(Random(), directory, Similarity, TimeZone); // we use the default Locale/TZ since LuceneTestCase randomizes it var cal = new GregorianCalendar().ToDateTime(1970, 1, 1, 0, 0, 0, (int)TestUtil.NextLong(Random(), 0, long.MaxValue)); for (int i = 0; i < Max; i++) { Document doc = new Document(); doc.Add(NewStringField("key", "" + (i + 1), Field.Store.YES)); doc.Add(NewStringField("owner", (i < Max / 2) ? "bob" : "sue", Field.Store.YES)); doc.Add(NewStringField("date", cal.ToString(CultureInfo.InvariantCulture), Field.Store.YES)); writer.AddDocument(doc); cal = cal.AddDays(1); } reader = writer.Reader; writer.Dispose(); searcher = NewSearcher(reader); // query for everything to make life easier BooleanQuery bq = new BooleanQuery(); bq.Add(new TermQuery(new Term("owner", "bob")), Occur.SHOULD); bq.Add(new TermQuery(new Term("owner", "sue")), Occur.SHOULD); query = bq; // date filter matches everything too //Date pastTheEnd = parseDate("2099 Jan 1"); // dateFilter = DateFilter.Before("date", pastTheEnd); // just treat dates as strings and select the whole range for now... dateFilter = TermRangeFilter.NewStringRange("date", "", "ZZZZ", true, true); bobFilter = new QueryWrapperFilter(new TermQuery(new Term("owner", "bob"))); sueFilter = new QueryWrapperFilter(new TermQuery(new Term("owner", "sue"))); }
private long GetNextPoint(ref DateTime t, int unit, int unitSteps) { switch (unit) { case 0: t = gc.AddSeconds(t, unitSteps); break; case 1: t = gc.AddMinutes(t, unitSteps); break; case 2: t = gc.AddHours(t, unitSteps); break; case 3: t = gc.AddDays(t, unitSteps); break; case 4: t = gc.AddWeeks(t, unitSteps); break; case 5: t = gc.AddMonths(t, unitSteps); break; case 6: t = gc.AddYears(t, unitSteps); break; default: break; } return(Util.TicksToMillis(t.Ticks)); }
private void RenderMonth(TextWriter writer, SuggestionDayResult[] dayResults, bool?workingHoursOnly) { Calendar calendar = new GregorianCalendar(); int weekStartDay = (int)this.owaContext.UserContext.UserOptions.WeekStartDay; this.dates = new DateTime[42]; int num = -this.offset; for (int i = 0; i < 42; i++) { this.dates[i] = calendar.AddDays(this.firstDayInCurrentMonth, num); num++; } string arg = (workingHoursOnly == null) ? "dpht" : "dphst"; writer.Write("<table cellpadding=3 cellspacing=0 class=\"{0}\">", arg); writer.Write("<tr"); if (workingHoursOnly == null && this.selectedDate.Year == this.currentDate.Year && this.selectedDate.Month == this.currentDate.Month) { writer.Write(" class=\"c\""); } writer.Write("><td align=\"left\">"); DateTime dateTime = calendar.AddMonths(this.selectedDate, -1); writer.Write("<a href=\"#\" onClick=\"return onClkD({0},{1},{2});\" title=\"{3}\"><img src=\"", new object[] { dateTime.Year, dateTime.Month, dateTime.Day, LocalizedStrings.GetHtmlEncoded(344592200) }); this.owaContext.UserContext.RenderThemeFileUrl(writer, ThemeFileId.PreviousArrow); writer.Write("\" alt=\""); writer.Write(LocalizedStrings.GetHtmlEncoded(344592200)); writer.Write("\"></a></td>"); writer.Write("<td nowrap align=\"center\" class=\"m\">"); writer.Write(this.selectedDate.ToString("MMMM yyyy")); writer.Write("</td><td align=\"right\">"); DateTime dateTime2 = calendar.AddMonths(this.selectedDate, 1); writer.Write("<a href=\"#\" onClick=\"return onClkD({0},{1},{2});\" title=\"{3}\"><img src=\"", new object[] { dateTime2.Year, dateTime2.Month, dateTime2.Day, LocalizedStrings.GetHtmlEncoded(1040160067) }); this.owaContext.UserContext.RenderThemeFileUrl(writer, ThemeFileId.NextArrow); writer.Write("\" alt=\"{0}\"></a></td></tr></table>", LocalizedStrings.GetHtmlEncoded(1040160067)); string[] oneLetterDayNames = Culture.GetOneLetterDayNames(); arg = ((workingHoursOnly == null) ? "dp" : "dpst"); writer.Write("<table cellspacing=0 cellpadding=0 class=\"{0}\"><tr>", arg); if (this.showWeekNumbers) { writer.Write("<td> </td>"); } int j = 0; int num2 = weekStartDay; while (j < 7) { writer.Write("<td align=\"center\">"); writer.Write(oneLetterDayNames[num2 % 7]); writer.Write("</td>"); j++; num2++; } writer.Write("</tr>"); this.RenderDays(writer, dayResults, workingHoursOnly); writer.Write("</table>"); }
private void RenderDays(TextWriter writer, SuggestionDayResult[] dayResults, bool?workingHoursOnly) { Calendar calendar = new GregorianCalendar(); DayOfWeek weekStartDay = this.owaContext.UserContext.UserOptions.WeekStartDay; CalendarWeekRule firstWeekOfYear = this.owaContext.UserContext.FirstWeekOfYear; DayOfWeek dayOfWeek = (weekStartDay + 6) % (DayOfWeek)7; int num = 0; int num2 = this.dates.Length / 7; DateTime dateTime = calendar.AddMonths(this.selectedDate, -1); DateTime dateTime2 = calendar.AddMonths(this.selectedDate, 1); bool flag = false; if (workingHoursOnly != null) { flag = true; } if (!flag) { this.GetFreeBusy(); } int num3 = -1; DateTime t = calendar.AddDays(this.selectedDate, 6); if (dayResults != null) { num3 = (dayResults[0].Date - this.startDate).Days; } bool flag2 = false; for (int i = 0; i < num2; i++) { writer.Write("<tr>"); if (this.showWeekNumbers) { int weekOfYear = calendar.GetWeekOfYear(this.dates[num], firstWeekOfYear, weekStartDay); writer.Write("<td align=\"center\" class=\"wk"); if (i == num2 - 1) { writer.Write(" lst"); } writer.Write("\">"); writer.Write(weekOfYear); writer.Write("</td>"); } for (int j = 0; j < 7; j++) { writer.Write("<td align=\"center\""); bool flag3 = true; if (flag) { if (num3 == -1 || num < num3) { DatePicker.RenderClass(writer, ref flag3, DatePicker.SuggestionQualityStyles[4]); } else { SuggestionDayResult suggestionDayResult = dayResults[num - num3]; if (suggestionDayResult != null) { Suggestion[] suggestionArray = suggestionDayResult.SuggestionArray; SuggestionQuality suggestionQuality; if (0 < suggestionArray.Length) { suggestionQuality = suggestionArray[0].SuggestionQuality; } else if (!this.owaContext.UserContext.WorkingHours.IsWorkDay(dayResults[num - num3].Date.DayOfWeek)) { suggestionQuality = (SuggestionQuality)4; } else { suggestionQuality = SuggestionQuality.Poor; } DatePicker.RenderClass(writer, ref flag3, DatePicker.SuggestionQualityStyles[(int)suggestionQuality]); } } } else if (this.freeBusyData[num] != '0') { DatePicker.RenderClass(writer, ref flag3, "fb"); } if (this.indexMonthStart > num || this.indexMonthEnd < num) { DatePicker.RenderClass(writer, ref flag3, "pn"); } if (this.dates[num].ToShortDateString() == this.currentDate.ToShortDateString()) { DatePicker.RenderClass(writer, ref flag3, "td"); } if (!flag) { if (this.dates[num].Date == this.selectedDate.Date) { DatePicker.RenderClass(writer, ref flag3, "sd"); } } else if (this.dates[num] >= this.selectedDate && this.dates[num] <= t) { if (workingHoursOnly != null && workingHoursOnly == true) { if (this.owaContext.UserContext.WorkingHours.IsWorkDay(this.dates[num].DayOfWeek) || num == 0) { if (!flag2) { DatePicker.RenderClass(writer, ref flag3, "sd"); DatePicker.RenderClass(writer, ref flag3, "tb"); flag2 = true; } else { DatePicker.RenderClass(writer, ref flag3, "tb"); } } if (this.dates[num].ToShortDateString() == t.ToShortDateString() && flag2) { DatePicker.RenderClass(writer, ref flag3, "tb"); DatePicker.RenderClass(writer, ref flag3, "r"); flag2 = false; } if ((!this.owaContext.UserContext.WorkingHours.IsWorkDay(calendar.AddDays(this.dates[num], 1).DayOfWeek) || j == 6) && flag2) { DatePicker.RenderClass(writer, ref flag3, "tb"); DatePicker.RenderClass(writer, ref flag3, "r"); flag2 = false; } } else { if (!flag2) { DatePicker.RenderClass(writer, ref flag3, "sd"); DatePicker.RenderClass(writer, ref flag3, "tb"); flag2 = true; } else { DatePicker.RenderClass(writer, ref flag3, "tb"); } if (this.dates[num].ToShortDateString() == t.ToShortDateString() && flag2) { DatePicker.RenderClass(writer, ref flag3, "tb"); DatePicker.RenderClass(writer, ref flag3, "r"); flag2 = false; } if (this.dates[num].DayOfWeek == dayOfWeek) { DatePicker.RenderClass(writer, ref flag3, "tb"); DatePicker.RenderClass(writer, ref flag3, "r"); flag2 = false; } } } if (!flag3) { writer.Write("\""); } writer.Write("><a href=\"#\" onClick=\"return onClkD("); if (this.indexMonthStart > num) { writer.Write("{0},{1},", dateTime.Year, dateTime.Month); } else if (this.indexMonthEnd < num) { writer.Write("{0},{1},", dateTime2.Year, dateTime2.Month); } else { writer.Write("{0},{1},", this.selectedDate.Year, this.selectedDate.Month); } writer.Write("{0})\">", this.dates[num].Day); string daysFormat = DateTimeUtilities.GetDaysFormat(this.owaContext.UserContext.UserOptions.DateFormat); writer.Write(this.dates[num].ToString(daysFormat ?? "%d")); writer.Write("</a></td>"); num++; } writer.Write("</tr>"); } }
public bool runTest() { Console.WriteLine(s_strTFPath + "\\" + s_strTFName + " , for " + s_strClassMethod + " , Source ver " + s_strDtTmVer); String strLoc = "Loc_000oo"; String strValue = String.Empty; int iCountErrors = 0; int iCountTestcases = 0; DateTime date; DateTime dateReturned; DateTime dateExpected; DateTime dateExpectedFromPattern; CultureInfo[] cultures; DateTimeStyles style; String s; Random random; Hashtable table; Char[] splittableChars = {' ', '/', ':'}; Char ch1; String[] formats = {"d", "D", "f", "F", "g", "G", "m", "M", "r", "R", "s", "t", "T", "u", "U", "y", "Y"}; Boolean fDoneAtLeastOnce; String[] dateInfoCustomFormats; String parseToBeString; TimeZone zone; TimeSpan span; int year,month,day,hour,minute,second,millisecond; DateTime tempDate; Int32 iNumOfDates; Calendar calendar = new GregorianCalendar(); GregorianCalendar greg; Calendar[] calendars = { new GregorianCalendar(GregorianCalendarTypes.Arabic), new GregorianCalendar(GregorianCalendarTypes.Localized), new GregorianCalendar(GregorianCalendarTypes.MiddleEastFrench), new GregorianCalendar(GregorianCalendarTypes.TransliteratedEnglish), new GregorianCalendar(GregorianCalendarTypes.TransliteratedFrench), new GregorianCalendar(GregorianCalendarTypes.USEnglish), new HijriCalendar(), new TaiwanCalendar(), new JapaneseCalendar(), new KoreanCalendar(), new ThaiBuddhistCalendar(), }; try { random = new Random(); for(int iCalendarCount=0; iCalendarCount<calendars.Length; iCalendarCount++){ calendar = calendars[iCalendarCount]; strLoc = "Loc_384sdg"; date=DateTime.MinValue; if(runAllDates) { iNumOfDates = 80*365+90; date = GetStartDate(calendar); } else iNumOfDates = 100; for(int noDates=0; noDates<iNumOfDates;noDates++) { strLoc = "Loc_451dsg"; if(runAllDates) { date = calendar.AddDays(date,1); } else { year = GetRandomYear(calendar, random); month = random.Next(1, 12); day = random.Next(1, 28); hour = random.Next(0, 23); minute = random.Next(0, 59); second = random.Next(0, 59); millisecond=random.Next(0, 999); date = calendar.ToDateTime(year, month, day, hour, minute, second, millisecond); } strLoc = "Loc_347tsg"; zone = TimeZone.CurrentTimeZone; span = zone.GetUtcOffset(date); table = new Hashtable(); table.Add("d", new DateTime(date.Year, date.Month, date.Day)); table.Add("D", new DateTime(date.Year, date.Month, date.Day)); table.Add("f", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, 0)); table.Add("F", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("g", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, 0)); table.Add("G", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("m", new DateTime(date.Year, date.Month, date.Day)); table.Add("M", new DateTime(date.Year, date.Month, date.Day)); tempDate = date.ToLocalTime(); table.Add("r", new DateTime(tempDate.Year, tempDate.Month, tempDate.Day, tempDate.Hour, tempDate.Minute, tempDate.Second)); table.Add("R", new DateTime(tempDate.Year, tempDate.Month, tempDate.Day, tempDate.Hour, tempDate.Minute, tempDate.Second)); table.Add("s", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("t", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, 0)); table.Add("T", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("u", new DateTime(tempDate.Year, tempDate.Month, tempDate.Day, tempDate.Hour, tempDate.Minute, tempDate.Second)); tempDate = date.ToUniversalTime(); table.Add("U", new DateTime(tempDate.Year, tempDate.Month, tempDate.Day, tempDate.Hour, tempDate.Minute, tempDate.Second)); table.Add("y", new DateTime(date.Year, date.Month, date.Day)); table.Add("Y", new DateTime(date.Year, date.Month, date.Day)); strLoc = "Loc_3497sdg"; cultures = CultureInfo.GetCultures(CultureTypes.AllCultures); foreach(CultureInfo culture in cultures) { strLoc = "Loc_37tsdg"; if(culture.IsNeutralCulture) continue; try{ culture.DateTimeFormat.Calendar = calendar; }catch{ continue; } if((calendar is GregorianCalendar)){ greg = (GregorianCalendar)calendar; if(greg.CalendarType==GregorianCalendarTypes.TransliteratedFrench){ if(calendar.GetDayOfWeek(date)==DayOfWeek.Thursday) continue; } } if(culture.Name.Equals("div-MV")) continue; iCountTestcases++; foreach(String format in formats) { if((calendar is GregorianCalendar)){ greg = (GregorianCalendar)calendar; if(greg.CalendarType==GregorianCalendarTypes.TransliteratedFrench){ if(calendar.GetDayOfWeek(date.ToUniversalTime())==DayOfWeek.Thursday) continue; } } if(!(calendar is GregorianCalendar) && (format.ToUpper().Equals("U") || format.ToUpper().Equals("R"))) continue; if(format.ToUpper().Equals("M")){ if(calendar.GetDayOfMonth(date) > calendar.GetDaysInMonth(calendar.GetYear(DateTime.Now), calendar.GetMonth(date))) continue; } if((culture.Name.Equals("ka-GE") || culture.Name.Equals("af-ZA")) && format.Equals("u") ) continue; if(culture.Name.Equals("fa-IR") && format.ToUpper().Equals("Y") ) continue; if((culture.Name.Equals("af-ZA") || culture.Name.Equals("th-TH")) && format.ToUpper().Equals("R") ) continue; if((culture.Name.Equals("sq-AL") || culture.Name.Equals("mn-MN") ) && format.ToUpper().Equals("Y") ) continue; strLoc = "Loc_386tsg"; s = date.ToString(format, culture); strLoc = "Loc_3947tsg"; dateExpected = (DateTime)table[format]; dateInfoCustomFormats = null; try { dateInfoCustomFormats = DateTimeFormatInfo.GetInstance(culture).GetAllDateTimePatterns(format[0]); } catch(Exception) { Console.WriteLine("Err_3498wsg"); } try { strLoc = "Loc_9374tsdg!"; style = DateTimeStyles.None; dateReturned = DateTime.Parse(s, culture, style); if(!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_93745sdg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } strLoc = "Loc_93456tfg!"; if( !format.Equals("U") && (culture.Name.Equals("en-US") || culture.Name.Equals("ja-JP") || culture.Name.Equals("de-DE")) ) { if(culture.Name.Equals("ja-JP") && (format.Equals("r")||format.Equals("R"))) continue; if(culture.Name.Equals("de-DE") && (format.Equals("f")||format.Equals("F")||format.Equals("G")||format.Equals("g")||format.Equals("t")||format.Equals("T"))) continue; foreach(String patternFormat in dateInfoCustomFormats) { if(GetPatternedDate(table, patternFormat, format, out dateExpectedFromPattern)) { parseToBeString = date.ToString(patternFormat, culture); dateReturned = DateTime.Parse(parseToBeString, culture, style); if(!ResultCorrect(dateReturned, dateExpectedFromPattern, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_347tsdg! Culture: <{4}>, Format: {2}, BaseFormat: {5}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpectedFromPattern, dateReturned, patternFormat, parseToBeString, culture, format); } } } } strLoc = "Loc_2837sdg!"; style = DateTimeStyles.NoCurrentDateDefault; dateReturned = DateTime.Parse(s, culture, style); if(!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_3745dsgdg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } strLoc = "Loc_486tsg"; s = s.PadLeft(random.Next(50)); style = DateTimeStyles.AllowLeadingWhite; dateReturned = DateTime.Parse(s, culture, style); if(!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_74985wgdsg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } strLoc = "Loc_23947tsdg!"; s = s.TrimStart(); s = s.PadRight(random.Next(50)); style = DateTimeStyles.AllowTrailingWhite; dateReturned = DateTime.Parse(s, culture, style); if(!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_9374sdg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, GetUnicodeString(s), culture); } strLoc = "Loc_234967sgd!"; s = s.TrimEnd(); fDoneAtLeastOnce = false; for(int i=0; i<10; i++) { ch1 = splittableChars[random.Next(splittableChars.Length)]; if(s.IndexOf(ch1) >0) { s = s.Insert(s.IndexOf(ch1), new String(' ', random.Next(2, 20))); if(!fDoneAtLeastOnce) fDoneAtLeastOnce=true; } } style = DateTimeStyles.AllowInnerWhite; dateReturned = DateTime.Parse(s, culture, style); if(!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_43275sdg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } strLoc = "Loc_4329076tsfg!"; s = s.PadLeft(random.Next(50)); s = s.PadRight(random.Next(50)); style = DateTimeStyles.AllowWhiteSpaces; dateReturned = DateTime.Parse(s, culture, style); if(!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_3497gsg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } } catch(Exception ex) { if(culture.Name.Equals("vi-VN") && Char.ToUpper(format[0]).Equals('Y')) ex=null; else { iCountErrors++; Console.WriteLine("Err_75639rge! Unexpected exception thrown {0}, Loc: {3}, format: {4}, Culture: {1}, s:<{2}>, Date: {5}", ex.GetType().Name, culture, s, strLoc, format, date); } } } } } } } catch (Exception exc_general ) { ++iCountErrors; Console.WriteLine (s_strTFAbbrev + " : Error Err_8888yyy! strLoc=="+ strLoc +", exc_general=="+exc_general.ToString()); } if ( iCountErrors == 0 ) { Console.WriteLine( "paSs. "+s_strTFName+" ,iCountTestcases=="+iCountTestcases.ToString()); return true; } else { Console.WriteLine("FAiL! "+s_strTFName+" ,inCountErrors=="+iCountErrors.ToString()+" , BugNums?: "+s_strActiveBugNums ); return false; } }
public void RenderMonth(TextWriter output) { Calendar calendar = new GregorianCalendar(); int weekStartDay = (int)this.sessionContext.WeekStartDay; Utilities.IsFlagSet(this.features, 16); this.dates = new DateTime[42]; DateTime dateTime = (DateTime)DateTimeUtilities.GetLocalTime().Date; int num = -this.offset; for (int i = 0; i < 42; i++) { this.dates[i] = calendar.AddDays(this.firstDayInCurrentMonth, num); num++; } DateTime dateTime2 = (DateTime)this.month; output.Write("<div id=\"div"); output.Write(calendar.GetMonth(dateTime2)); output.Write(calendar.GetYear(dateTime2)); output.Write("\""); output.Write(" y="); output.Write(calendar.GetYear(dateTime2)); output.Write(" m="); output.Write(calendar.GetMonth(dateTime2)); output.Write(" class=\"dpMonth\">"); this.RenderHeader(output, calendar, dateTime2); int num2 = this.dates.Length / 7; this.RenderDaysOfWeek(output, weekStartDay); int num3 = 0; int num4 = calendar.GetMonth(dateTime2); int year = calendar.GetYear(dateTime2); int num5 = calendar.GetMonth(this.dates[num3]); int year2 = calendar.GetYear(this.dates[num3]); for (int j = 0; j < num2; j++) { output.Write("<div id=\"divWeek"); output.Write(j); if (Utilities.IsFlagSet(this.features, 16) || Utilities.IsFlagSet(this.features, 2)) { output.Write("\" class=\"dpWeekWp\">"); } else { output.Write("\" class=\"dpWeek\">"); } if (Utilities.IsFlagSet(this.features, 16) || Utilities.IsFlagSet(this.features, 2)) { int weekOfYear = calendar.GetWeekOfYear(this.dates[num3], this.sessionContext.FirstWeekOfYear, (DayOfWeek)weekStartDay); output.Write("<div"); output.Write(" w="); output.Write(weekOfYear); output.Write(" class=\""); if (Utilities.IsFlagSet(this.features, 2)) { output.Write("dpWeekNum "); } if (Utilities.IsFlagSet(this.features, 16)) { output.Write("dpWeekPkr"); } output.Write("\""); if (Utilities.IsFlagSet(this.features, 16)) { output.Write(" title=\""); output.Write(SanitizedHtmlString.FromStringId(-1811092250)); output.Write("\">"); } else { output.Write('>'); } if (Utilities.IsFlagSet(this.features, 2)) { output.Write(weekOfYear); } else { output.Write(" "); } output.Write("</div>"); } for (int k = 0; k < 7; k++) { bool flag = this.IsSelected(num3); output.Write("<div"); if (flag) { output.Write(" id=s"); } if (year2 != year) { output.Write(" y="); output.Write(year2); } if (num5 != num4) { output.Write(" m="); output.Write(num5); } output.Write(" class='"); if (DateTime.Compare(dateTime, this.dates[num3].Date) == 0) { output.Write(" dpToday"); } output.Write(Utilities.IsFlagSet(this.features, 32) ? " dpDayDdM" : " dpDay"); if (flag) { output.Write(" dpSel "); } if (this.indexMonthStart > num3 || this.indexMonthEnd < num3) { output.Write(" dpPOrN"); } if (this.busyType != null && this.busyType[num3] == BusyType.Busy) { output.Write(" b"); } output.Write("'>"); string text = DateTimeUtilities.GetDaysFormat(this.sessionContext.DateFormat); if (text == null) { text = "%d"; } output.Write("<span class=\"dpDayNum\">"); output.Write(this.dates[num3].ToString(text)); output.Write("</span>"); output.Write("</div>"); num3++; if (num3 < this.dates.Length) { num5 = calendar.GetMonth(this.dates[num3]); year2 = calendar.GetYear(this.dates[num3]); } } output.Write("</div>"); } this.RenderTodayButtons(output, calendar, dateTime); this.RenderMonthList(output); output.Write("</div>"); }
public static DateTime NextDayOfWeek(this DateTime dt, DayOfWeek day) { var d = new GregorianCalendar().AddDays(dt, -((int)dt.DayOfWeek) + (int)day); return((d.Day < dt.Day) ? d.AddDays(7) : d); }
public bool runTest() { Console.WriteLine(s_strTFPath + "\\" + s_strTFName + " , for " + s_strClassMethod + " , Source ver " + s_strDtTmVer); String strLoc = "Loc_000oo"; String strValue = String.Empty; int iCountErrors = 0; int iCountTestcases = 0; DateTime date; DateTime dateReturned; DateTime dateExpected; DateTime dateExpectedFromPattern; DateTime defaultDateExpected; CultureInfo[] cultures; DateTimeStyles style; String s; String original; Random random; Hashtable table; Char[] splittableChars = { ' ', '/', ':' }; Char ch1; String[] formats = { "d", "D", "f", "F", "g", "G", "m", "M", "r", "R", "s", "t", "T", "u", "U", "y", "Y" }; Boolean fDoneAtLeastOnce; String[] dateInfoCustomFormats; String parseToBeString; Calendar calendar = new GregorianCalendar(); int year, month, day, hour, minute, second, millisecond; DateTime tempDate; Int32 iNumOfDates; Calendar[] calendars = { new GregorianCalendar(GregorianCalendarTypes.Arabic), new GregorianCalendar(GregorianCalendarTypes.Localized), new GregorianCalendar(GregorianCalendarTypes.MiddleEastFrench), new GregorianCalendar(GregorianCalendarTypes.TransliteratedEnglish), new GregorianCalendar(GregorianCalendarTypes.TransliteratedFrench), new GregorianCalendar(GregorianCalendarTypes.USEnglish), new HijriCalendar(), new TaiwanCalendar(), new JapaneseCalendar(), new KoreanCalendar(), new ThaiBuddhistCalendar(), }; try { random = new Random(); strLoc = "Loc_384sdg"; for (int iCalendarCount = 0; iCalendarCount < calendars.Length; iCalendarCount++) { calendar = calendars[iCalendarCount]; date = new DateTime(2001, 4, 5, 21, 3, 4, 980); date = DateTime.MinValue; if (runAllDates) { iNumOfDates = 80 * 365 + 90; date = GetStartDate(calendar); } else { iNumOfDates = 100; } for (int noDates = 0; noDates < iNumOfDates; noDates++) { strLoc = "Loc_451dsg"; if (runAllDates) { date = calendar.AddDays(date, 1); } else { year = GetRandomYear(calendar, random); month = random.Next(1, 12); day = random.Next(1, 28); hour = random.Next(0, 23); minute = random.Next(0, 59); second = random.Next(0, 59); millisecond = random.Next(0, 999); date = calendar.ToDateTime(year, month, day, hour, minute, second, millisecond); } strLoc = "Loc_3947td"; table = new Hashtable(); table.Add("d", new DateTime(date.Year, date.Month, date.Day)); table.Add("D", new DateTime(date.Year, date.Month, date.Day)); table.Add("f", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, 0)); table.Add("F", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("g", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, 0)); table.Add("G", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("m", new DateTime(date.Year, date.Month, date.Day)); table.Add("M", new DateTime(date.Year, date.Month, date.Day)); table.Add("r", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("R", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("s", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("t", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, 0)); table.Add("T", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); table.Add("u", new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second)); tempDate = date.ToUniversalTime().ToLocalTime(); table.Add("U", new DateTime(tempDate.Year, tempDate.Month, tempDate.Day, tempDate.Hour, tempDate.Minute, tempDate.Second)); table.Add("y", new DateTime(date.Year, date.Month, date.Day)); table.Add("Y", new DateTime(date.Year, date.Month, date.Day)); cultures = CultureInfo.GetCultures(CultureTypes.AllCultures); foreach (CultureInfo culture in cultures) { strLoc = "Loc_37tsdg"; if (culture.IsNeutralCulture) { continue; } try{ culture.DateTimeFormat.Calendar = calendar; }catch { continue; } if ( culture.Name.Equals("fa-IR") ) { continue; } iCountTestcases++; foreach (String format in formats) { strLoc = "Loc_386tsg"; if (format.ToUpper().Equals("M")) { if (calendar.GetDayOfMonth(date) > calendar.GetDaysInMonth(calendar.GetYear(DateTime.Now), calendar.GetMonth(date))) { continue; } } s = date.ToString(format, culture); original = s; strLoc = "Loc_3947tsg"; if (culture.Name.Equals("div-MV")) { switch (format) { case "F": dateExpected = (DateTime)table["f"]; break; case "G": dateExpected = (DateTime)table["g"]; break; case "T": dateExpected = (DateTime)table["t"]; break; case "U": dateExpected = (DateTime)table["f"]; break; default: dateExpected = (DateTime)table[format]; break; } } else { dateExpected = (DateTime)table[format]; } dateInfoCustomFormats = null; try{ dateInfoCustomFormats = DateTimeFormatInfo.GetInstance(culture).GetAllDateTimePatterns(format[0]); }catch (Exception) { Console.WriteLine("Err_3498wsg"); } try{ strLoc = "Loc_9374tsdg!"; style = DateTimeStyles.None; dateReturned = DateTime.ParseExact(s, format, culture, style); if (!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_93745sdg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } strLoc = "Loc_93456tfg!"; foreach (String patternFormat in dateInfoCustomFormats) { if (culture.Name.Equals("vi-VN") && format.ToUpper().Equals("R")) { break; } if (culture.Name.Equals("hy-AM")) { break; } if (culture.Name.Equals("az-AZ-Latn") || culture.Name.Equals("az-AZ-Cyrl")) { break; } if (calendar is JapaneseCalendar && (format.ToUpper().Equals("R") || format.ToUpper().Equals("U") || format.ToUpper().Equals("S")) ) { break; } dateExpectedFromPattern = GetPatternedDate(table, patternFormat, format); parseToBeString = date.ToString(patternFormat, culture); dateReturned = DateTime.ParseExact(parseToBeString, patternFormat, culture, style); if (!ResultCorrect(dateReturned, dateExpectedFromPattern, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_347tsdg! Culture: <{4}>, Format: {2}, BaseFormat: {5}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpectedFromPattern, dateReturned, patternFormat, parseToBeString, culture, format); } } strLoc = "Loc_2837sdg!"; style = DateTimeStyles.NoCurrentDateDefault; dateReturned = DateTime.ParseExact(s, format, culture, style); if (!format.Equals("t") && !format.Equals("T") ) { if (!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_3745dsgdg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } } else { if (format.Equals("t")) { defaultDateExpected = new DateTime(1, 1, 1, date.Hour, date.Minute, 0); if (!ResultCorrect(dateReturned, defaultDateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_3957tsg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } } else { if (culture.Name.Equals("div-MV")) { defaultDateExpected = new DateTime(1, 1, 1, date.Hour, date.Minute, 0); } else { defaultDateExpected = new DateTime(1, 1, 1, date.Hour, date.Minute, date.Second); } if (!ResultCorrect(dateReturned, defaultDateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_3947sdg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", defaultDateExpected, dateReturned, format, s, culture); } } } strLoc = "Loc_486tsg"; s = s.PadLeft(random.Next(50)); style = DateTimeStyles.AllowLeadingWhite; dateReturned = DateTime.ParseExact(s, format, culture, style); if (!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_74985wgdsg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } strLoc = "Loc_874rsdg!"; foreach (String patternFormat in dateInfoCustomFormats) { if (culture.Name.Equals("vi-VN") && format.ToUpper().Equals("R")) { break; } if (culture.Name.Equals("hy-AM")) { break; } if (culture.Name.Equals("az-AZ-Latn") || culture.Name.Equals("az-AZ-Cyrl")) { break; } if (calendar is JapaneseCalendar && (format.ToUpper().Equals("R") || format.ToUpper().Equals("U") || format.ToUpper().Equals("S")) ) { break; } dateExpectedFromPattern = GetPatternedDate(table, patternFormat, format); parseToBeString = date.ToString(patternFormat, culture); parseToBeString = parseToBeString.PadLeft(random.Next(50)); dateReturned = DateTime.ParseExact(parseToBeString, patternFormat, culture, style); if (!ResultCorrect(dateReturned, dateExpectedFromPattern, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_9347sdg! Culture: <{4}>, Format: {2}, BaseFormat: {5}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpectedFromPattern, dateReturned, patternFormat, parseToBeString, culture, format); } } strLoc = "Loc_23947tsdg!"; s = original; s = s.PadRight(random.Next(50)); style = DateTimeStyles.AllowTrailingWhite; dateReturned = DateTime.ParseExact(s, format, culture, style); if (!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_9374sdg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } strLoc = "Loc_874rsdg!"; foreach (String patternFormat in dateInfoCustomFormats) { if (culture.Name.Equals("vi-VN") && format.ToUpper().Equals("R")) { break; } if (culture.Name.Equals("hy-AM")) { break; } if (culture.Name.Equals("az-AZ-Latn") || culture.Name.Equals("az-AZ-Cyrl")) { break; } if (calendar is JapaneseCalendar && (format.ToUpper().Equals("R") || format.ToUpper().Equals("U") || format.ToUpper().Equals("S")) ) { break; } dateExpectedFromPattern = GetPatternedDate(table, patternFormat, format); parseToBeString = date.ToString(patternFormat, culture); parseToBeString = parseToBeString.PadRight(random.Next(50)); dateReturned = DateTime.ParseExact(parseToBeString, patternFormat, culture, style); if (!ResultCorrect(dateReturned, dateExpectedFromPattern, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_29347tsdg! Culture: <{4}>, Format: {2}, BaseFormat: {5}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpectedFromPattern, dateReturned, patternFormat, parseToBeString, culture, format); } } strLoc = "Loc_234967sgd!"; s = original; fDoneAtLeastOnce = false; for (int i = 0; i < 10; i++) { ch1 = splittableChars[random.Next(splittableChars.Length)]; if (s.IndexOf(ch1) > 0) { s = s.Insert(s.IndexOf(ch1), new String(' ', random.Next(2, 20))); if (!fDoneAtLeastOnce) { fDoneAtLeastOnce = true; } } } style = DateTimeStyles.AllowInnerWhite; dateReturned = DateTime.ParseExact(s, format, culture, style); if (!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_43275sdg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } strLoc = "Loc_034tsg!"; foreach (String patternFormat in dateInfoCustomFormats) { if (culture.Name.Equals("vi-VN") && format.ToUpper().Equals("R")) { break; } if (culture.Name.Equals("hy-AM")) { break; } if (culture.Name.Equals("az-AZ-Latn") || culture.Name.Equals("az-AZ-Cyrl")) { break; } if (calendar is JapaneseCalendar && (format.ToUpper().Equals("R") || format.ToUpper().Equals("U") || format.ToUpper().Equals("S")) ) { break; } dateExpectedFromPattern = GetPatternedDate(table, patternFormat, format); parseToBeString = date.ToString(patternFormat, culture); for (int i = 0; i < 10; i++) { ch1 = splittableChars[random.Next(splittableChars.Length)]; if (parseToBeString.IndexOf(ch1) > 0) { parseToBeString = parseToBeString.Insert(parseToBeString.IndexOf(ch1), new String(' ', random.Next(2, 20))); } } dateReturned = DateTime.ParseExact(parseToBeString, patternFormat, culture, style); if (!ResultCorrect(dateReturned, dateExpectedFromPattern, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_3409sgd! Culture: <{4}>, Format: {2}, BaseFormat: {5}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpectedFromPattern, dateReturned, patternFormat, parseToBeString, culture, format); } } strLoc = "Loc_4329076tsfg!"; s = s.PadLeft(random.Next(50)); s = s.PadRight(random.Next(50)); style = DateTimeStyles.AllowWhiteSpaces; dateReturned = DateTime.ParseExact(s, format, culture, style); if (!ResultCorrect(dateReturned, dateExpected, format, culture, calendar)) { iCountErrors++; Console.WriteLine("Err_3497gsg! Culture: <{4}>, Format: {2}, String: <{3}>, Expected: {0}, Returned: {1}", dateExpected, dateReturned, format, s, culture); } }catch (Exception ex) { if (culture.Name.Equals("vi-VN") && Char.ToUpper(format[0]).Equals('Y')) { ex = null; } else { iCountErrors++; Console.WriteLine("Err_75639rge! Unexpected exception thrown {0}, Loc: {3}, format: {4}, Culture: {1}, s:<{2}>", ex.GetType().Name, culture, s, strLoc, format); } } } } } } } catch (Exception exc_general) { ++iCountErrors; Console.WriteLine(s_strTFAbbrev + " : Error Err_8888yyy! strLoc==" + strLoc + ", exc_general==" + exc_general.ToString()); } if (iCountErrors == 0) { Console.WriteLine("paSs. " + s_strTFName + " ,iCountTestcases==" + iCountTestcases.ToString()); return(true); } else { Console.WriteLine("FAiL! " + s_strTFName + " ,inCountErrors==" + iCountErrors.ToString() + " , BugNums?: " + s_strActiveBugNums); return(false); } }