public async Task FailsIfLessthanMin_date()
        {
            var min    = new DateTime(2013, 10, 10);
            var sample = new SampleConfig
            {
                StartDate = min.AddDays(-1)
            };

            modelBuilder.Property(k => k.StartDate).WithMinValue(min);
            var model  = modelBuilder.Build();
            var result = await target.Validate(sample, model, configIdentity);

            Assert.False(result.IsValid);
            Assert.Single(result.Errors);
            Assert.Equal(ValidationStrings.LessThanMin(nameof(SampleConfig.StartDate), min), result.Errors.Single());
        }
        public async Task FailsIfLessthanMin_nullable_int()
        {
            var min    = 3;
            var sample = new SampleConfig
            {
                SpareLlamaCapacity = 2
            };

            modelBuilder.Property(k => k.SpareLlamaCapacity).WithMinValue(min);
            var model  = modelBuilder.Build();
            var result = await target.Validate(sample, model, configIdentity);

            Assert.False(result.IsValid);
            Assert.Single(result.Errors);
            Assert.Equal(ValidationStrings.LessThanMin(nameof(SampleConfig.SpareLlamaCapacity), min), result.Errors.Single());
        }
        public async Task FailsIfLessthanMin_decimal()
        {
            var min    = 3m;
            var sample = new SampleConfig
            {
                Decimal = 2m
            };

            modelBuilder.Property(k => k.Decimal).WithMinValue(min);
            var model  = modelBuilder.Build();
            var result = await target.Validate(sample, model, configIdentity);

            Assert.False(result.IsValid);
            Assert.Single(result.Errors);
            Assert.Equal(ValidationStrings.LessThanMin(nameof(SampleConfig.Decimal), min), result.Errors.Single());
        }