public void ValidateShouldNotThrowWhenGenericTypeIsGiven()
        {
            GenericSubclassTypeValidator validator = new GenericSubclassTypeValidator(typeof(IGenericInterface<>));

            validator.Validate(typeof(Generic));

            validator.Validate(typeof(ParentGeneric));

            validator.Validate(typeof(ChildGeneric));
        }
        public void ValidateShouldThrowWhenNonGenericTypeIsGiven()
        {
            GenericSubclassTypeValidator validator = new GenericSubclassTypeValidator(typeof(IGenericInterface<>));

            Assert.Throws<ArgumentException>(() => validator.Validate(new NotGeneric()));
        }