Exemplo n.º 1
0
        public void PastAndFuture()
        {
            IClassValidator validator = GetClassValidator(typeof(FooDate));
            FooDate f = new FooDate();

            f.Past = DateTime.MinValue;
            f.Future = DateTime.MaxValue;
            validator.GetInvalidValues(f).Should().Be.Empty();

            f.Future = DateTime.Today.AddDays(1); //tomorrow
            f.Past = DateTime.Today.AddDays(-1); //yesterday
            validator.GetInvalidValues(f).Should().Be.Empty();

            f.Future = DateTime.Today.AddDays(-1); //yesterday
            validator.GetInvalidValues(f).Should().Have.Count.EqualTo(1);

            f.Future = DateTime.Today.AddDays(1); //tomorrow
            f.Past = DateTime.Today.AddDays(1); //tomorrow
            validator.GetInvalidValues(f).Should().Have.Count.EqualTo(1);

            // note: using Milliseconds the Past constraint mail fail depending on the speed of your machine
            f.Future = DateTime.Now.AddMilliseconds(-1);
            f.Past = DateTime.Now.AddMilliseconds(+5);
            validator.GetInvalidValues(f).Should().Have.Count.EqualTo(2);
        }
Exemplo n.º 2
0
        public void PastAndFuture()
        {
            IClassValidator validator = GetClassValidator(typeof(FooDate));
            FooDate         f         = new FooDate();

            f.Past   = DateTime.MinValue;
            f.Future = DateTime.MaxValue;
            validator.GetInvalidValues(f).Should().Be.Empty();

            f.Future = DateTime.Today.AddDays(1);            //tomorrow
            f.Past   = DateTime.Today.AddDays(-1);           //yesterday
            validator.GetInvalidValues(f).Should().Be.Empty();

            f.Future = DateTime.Today.AddDays(-1);             //yesterday
            validator.GetInvalidValues(f).Should().Have.Count.EqualTo(1);

            f.Future = DateTime.Today.AddDays(1);           //tomorrow
            f.Past   = DateTime.Today.AddDays(1);           //tomorrow
            validator.GetInvalidValues(f).Should().Have.Count.EqualTo(1);

            // note: using Milliseconds the Past constraint mail fail depending on the speed of your machine
            f.Future = DateTime.Now.AddMilliseconds(-1);
            f.Past   = DateTime.Now.AddMilliseconds(+5);
            validator.GetInvalidValues(f).Should().Have.Count.EqualTo(2);
        }
        public void PastAndFuture()
        {
            IClassValidator validator = GetClassValidator(typeof(FooDate));
            FooDate f = new FooDate();

            f.Past = DateTime.MinValue;
            f.Future = DateTime.MaxValue;
            Assert.AreEqual(0, validator.GetInvalidValues(f).Length);

            f.Future = DateTime.Today.AddDays(1); //tomorrow
            f.Past = DateTime.Today.AddDays(-1); //yesterday
            Assert.AreEqual(0, validator.GetInvalidValues(f).Length);

            f.Future = DateTime.Today.AddDays(-1); //yesterday
            Assert.AreEqual(1, validator.GetInvalidValues(f).Length);

            f.Future = DateTime.Today.AddDays(1); //tomorrow
            f.Past = DateTime.Today.AddDays(1); //tomorrow
            Assert.AreEqual(1, validator.GetInvalidValues(f).Length);

            f.Future = DateTime.Now.AddMilliseconds(-1);
            f.Past = DateTime.Now.AddMilliseconds(+1);
            Assert.AreEqual(2, validator.GetInvalidValues(f).Length);
        }