public void ConfigurationRequirement_Bool_Success()
        {
            const string name        = "ConfigurationRequirementName";
            const string description = "Configuration requirement description.";
            const string badInput    = "Bad input";
            const bool   goodInput   = true;

            AssertUtil.Compare(
                name,
                description,
                ConfigurationRequirementType.Bool,
                () => ConfigurationRequirement.Bool(name, description),
                badInput,
                goodInput);
        }
        public void ConfigurationRequirement_Bool_PropagatesInfo()
        {
            const string name        = "ConfigurationRequirementName";
            const string description = "Configuration requirement description.";
            const bool   isOptional  = true;
            const string badInput    = "Bad input";

            bool[] goodInput =
                new bool[]
            {
                true,
                false,
                true
            };
            CollectionInfo collectionInfo = new CollectionInfo(1, 4);

            IEnumerable <IConfigurationRequirement> dependsOn =
                TestUtil.CreateIConfigurationRequirementCollection(3);
            IEnumerable <IConfigurationRequirement> exclusiveWith =
                TestUtil.CreateIConfigurationRequirementCollection(3);

            AssertUtil.Compare(
                name,
                description,
                ConfigurationRequirementType.Bool,
                isOptional,
                collectionInfo,
                dependsOn,
                exclusiveWith,
                () => ConfigurationRequirement.Bool(
                    name,
                    description,
                    isOptional,
                    collectionInfo,
                    dependsOn,
                    exclusiveWith),
                badInput,
                goodInput);
        }