public void TestRequiredWithInvalidObject()
        {
            var entity = new EntityCommonTest("", null, null, null, null).ValidateSchema();

            Assert.True(entity.ValidationResult.IsInvalid());
            Assert.Equal(5, entity.ValidationResult.GetErrors().Count);
        }
        public void TestRequiredWithValidObject()
        {
            var entity = new EntityCommonTest("João", 0, DateTime.Now, 2, new List <string> {
                "João"
            }).ValidateSchema();

            for (int x = 0; x < 100000; x++)
            {
                entity.ValidateSchema();

                Assert.True(entity.ValidationResult.IsValid());
            }
        }
        public void TestAutoValidation()
        {
            var entity = new EntityCommonTest("", null, null, null, new List <string> {
            });

            Assert.True(entity.ValidationResult.IsInvalid());
            Assert.Equal(5, entity.ValidationResult.GetErrors().Count);

            entity.CreatedDate = DateTime.Now;
            entity.Name        = "Luiz";

            Assert.True(entity.ValidationResult.IsInvalid());
            Assert.Equal(3, entity.ValidationResult.GetErrors().Count);

            entity.Value     = 2;
            entity.Stock     = 0;
            entity.ListValue = new List <string> {
                "Luiz"
            };

            Assert.True(entity.ValidationResult.IsValid());
            Assert.Empty(entity.ValidationResult.GetErrors());
        }