Пример #1
0
        public void ser_deser_a_datetime()
        {
            var obj = new ADateTime
            {
                Id      = "my_id_value",
                TheDate = DateTime.Parse("10/30/2013 4:55 PM")
            };

            var truth = new Datum
            {
                type = Datum.DatumType.R_OBJECT
            };

            truth.r_object.Add(new Datum.AssocPair
            {
                key = "Id",
                val = new Datum
                {
                    type  = Datum.DatumType.R_STR,
                    r_str = "my_id_value"
                }
            });
            truth.r_object.Add(new Datum.AssocPair
            {
                key = "TheDate",
                val = new Datum
                {
                    type     = Datum.DatumType.R_OBJECT,
                    r_object =
                    {
                        new Datum.AssocPair {
                            key = "$reql_type$", val = new Datum{
                                type = Datum.DatumType.R_STR, r_str = "TIME"
                            }
                        },
                        new Datum.AssocPair {
                            key = "epoch_time", val = new Datum{
                                type = Datum.DatumType.R_NUM, r_num = 1383152100
                            }
                        },
                        new Datum.AssocPair {
                            key = "timezone", val = new Datum{
                                type = Datum.DatumType.R_STR, r_str = "+00:00"
                            }
                        },
                    }
                }
            });

            var newtonDatum = DatumConvert.SerializeObject(obj);

            truth.ShouldBeEquivalentTo(newtonDatum);

            var newtonObject = DatumConvert.DeserializeObject <ADateTime>(truth);

            newtonObject.ShouldBeEquivalentTo(obj);
        }
Пример #2
0
        public void EqualDownToMilliseconds()
        {
            var now      = DateTime.Now;
            var dateTime = new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second, now.Millisecond);

            AssertPasses(dateTime, ADateTime.EqualTo(dateTime));
            AssertPasses(dateTime, ADateTime.EqualTo(new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second, now.Millisecond)));

            AssertFails(dateTime, ADateTime.EqualTo(new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second, now.Millisecond + 1)));
            AssertFails(dateTime, ADateTime.EqualTo(new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second, now.Millisecond - 1)));
        }
Пример #3
0
        public void EqualToTest()
        {
            var dateTime = new DateTime(1984, 1, 1);

            AssertPasses(dateTime, ADateTime.EqualTo(dateTime));
            AssertPasses(dateTime, ADateTime.EqualTo(new DateTime(1984, 1, 1)));
            AssertPasses(null, ADateTime.EqualTo(null));

            AssertFails(null, ADateTime.EqualTo(dateTime));
            AssertFails(DateTime.Now, ADateTime.EqualTo(dateTime));
        }
Пример #4
0
        public void EqualToPlusOrMinusTest()
        {
            var now     = DateTime.Now;
            var matcher = ADateTime.EqualTo(now).Within(2).Minutes();

            AssertPasses(now.AddMinutes(-2), matcher);
            AssertPasses(now, matcher);
            AssertPasses(now.AddMinutes(2), matcher);

            AssertFails(now.AddMinutes(-3), matcher);
            AssertFails(now.AddMinutes(3), matcher);
        }
Пример #5
0
        public void AfterTest()
        {
            var dateTime = new DateTime(1984, 1, 1);

            var matcher = ADateTime.After(dateTime);

            AssertPasses(dateTime.AddMilliseconds(1), matcher);
            AssertPasses(dateTime.AddDays(1), matcher);

            AssertFails(dateTime, matcher);
            AssertFails(dateTime.AddMilliseconds(-1), matcher);
            AssertFails(dateTime.AddDays(-1), matcher);
        }
Пример #6
0
        public void EqualToMinusMaxTest()
        {
            var now     = DateTime.Now;
            var matcher = ADateTime.EqualTo(now).MinusMax(2).Minutes();

            AssertPasses(now, matcher);
            AssertPasses(now.AddMinutes(-1), matcher);
            AssertPasses(now.AddMinutes(-2), matcher);

            AssertFails(now.AddMinutes(1), matcher);
            AssertFails(now.AddMinutes(2), matcher);
            AssertFails(now.AddMinutes(3), matcher);

            AssertFails(now.AddMinutes(-3), matcher);

            AssertPasses(null, ADateTime.EqualTo(null).MinusMax(1).Minutes());
        }
Пример #7
0
        public void NotNullTest()
        {
            AssertPasses(DateTime.Now, ADateTime.NotNull());

            AssertFails(null, ADateTime.NotNull());
        }