public void CustomComponentValidatorAttribute_Ctor_ParameterizedCtor()
        {
            CustomExternalComponentValidatorAttribute attrib =
                new CustomExternalComponentValidatorAttribute(typeof(CustomComponent), typeof(CustomValidator2), 1, "test");

            Assert.Equal(typeof(CustomComponent), attrib.TargetComponentType);
            Assert.Equal(typeof(CustomValidator2), attrib.ValidatorType);
            Assert.IsType <CustomValidator2>(attrib.Validator);
            Assert.Equal(new object[] { 1, "test" }, attrib.ValidatorConstructorArguments);
        }
        public void CustomExternalComponentValidatorAttribute_ParameterlessCtor()
        {
            CustomExternalComponentValidatorAttribute attrib =
                new CustomExternalComponentValidatorAttribute(typeof(CustomComponent), typeof(CustomValidator));

            Assert.Equal(typeof(CustomComponent), attrib.TargetComponentType);
            Assert.Equal(typeof(CustomValidator), attrib.ValidatorType);
            Assert.IsType <CustomValidator>(attrib.Validator);
            Assert.Empty(attrib.ValidatorConstructorArguments);
        }
        public void CustomComponentValidatorAttribute_Validator_ExceptionOnValidatorCtor()
        {
            CustomExternalComponentValidatorAttribute attrib = new CustomExternalComponentValidatorAttribute(typeof(CustomComponent), typeof(CustomValidator3));

            Assert.Throws <FormatException>(() => { object x = attrib.Validator; });
        }