Example #1
0
 static StdErrLog()
 {
     try
     {
         _dateCache=new DateCache("yyyy-MM-dd HH:mm:ss");
     }
     catch(Exception e)
     {
         Console.Error.WriteLine(e.StackTrace);
     }
 }
Example #2
0
        public void TestDateCache()
        {
            DateCache dc = new DateCache("ddd, dd MMM yyyy HH:mm:ss zzz ZZZ",
                                         CultureInfo.CurrentCulture);
            dc.TimeZone = TimeZoneInfo.Utc;
            string last=dc.Format(DateTime.Now.Ticks);
            bool change=false;
            for (int i=0;i<15;i++)
            {
                Thread.Sleep(100);
                string date = dc.Format(DateTime.Now.Ticks);

                Assert.AreEqual(last.Substring(0,17),
                              date.Substring(0, 17), "Same Date");

                if (!last.Substring(17).Equals(date.Substring(17)))
                    change=true;
                else
                {
                    int lh=int.Parse(last.Substring(17,2));
                    int dh=int.Parse(date.Substring(17,2));
                    int lm=int.Parse(last.Substring(20,2));
                    int dm=int.Parse(date.Substring(20,2));
                    int ls=int.Parse(last.Substring(23,2));
                    int ds=int.Parse(date.Substring(23,2));

                    // This won't work at midnight!
                    change|= ds!=ls || dm!=lm || dh!=lh;
                }
                last=date;
            }
            Assert.IsTrue(change, "time changed");

            // Test string is cached
            dc = new DateCache();
            string s1=dc.Format(DateTime.Now.Ticks);
            dc.Format(1);
            string s2 = dc.Format(DateTime.Now.Ticks);
            dc.Format(DateTime.Now.Ticks + (10 * 60 * 60 * 1000) );
            string s3 = dc.Format(DateTime.Now.Ticks);
            Assert.IsTrue(s1==s2 || s2==s3);
        }