Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 3
0
        public static DateTime NextFriday(this DateTime dt)
        {
            var sunday = new GregorianCalendar().AddDays(dt, -((int)dt.DayOfWeek) + 7);
            var friday = sunday.AddDays(-2);

            return(friday);
        }
Ejemplo n.º 4
0
        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));
        }
Ejemplo n.º 5
0
        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());
        }
Ejemplo n.º 8
0
 public static DateTime?AddDays(DateTime time, int days)
 {
     System.Globalization.Calendar cal = new GregorianCalendar();
     try
     {
         return(cal.AddDays(time, days));
     }
     catch (ArgumentException)
     {
         return(null);
     }
 }
Ejemplo n.º 9
0
        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);
        }
Ejemplo n.º 10
0
        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);
        }
Ejemplo n.º 11
0
        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);
        }
Ejemplo n.º 12
0
        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;
        }
Ejemplo n.º 13
0
        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")));
        }
Ejemplo n.º 14
0
        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;
        }
Ejemplo n.º 15
0
        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")));
        }
Ejemplo n.º 16
0
        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));
        }
Ejemplo n.º 17
0
        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>&nbsp;</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>");
        }
Ejemplo n.º 18
0
        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>");
            }
        }
Ejemplo n.º 19
0
 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;
     }
   }
Ejemplo n.º 20
0
        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("&nbsp;");
                    }
                    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>");
        }
Ejemplo n.º 21
0
        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);
        }
Ejemplo n.º 22
0
    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);
        }
    }