public void IsValid_NeitherFeatureIsInCombination_ReturnsTrue()
        {
            // Arrange
            var candidate = new BlockedByConstraintValidator(new BlockedByConstraint(
                                                                 this._feature1,
                                                                 this._feature3));

            var combination = new Combination(new[]
            {
                this._feature2
            }
                                              .ToList());

            // Act
            var isValid = candidate.IsValid(combination);

            // Assert
            Assert.IsTrue(isValid);
        }
        public void IsValid_BlockedFeatureIsBeforeBlocking_ReturnsFalse()
        {
            // Arrange
            var candidate = new BlockedByConstraintValidator(new BlockedByConstraint(
                                                                 this._feature1,
                                                                 this._feature3));

            var combination = new Combination(new[]
            {
                this._feature3,
                this._feature2,
                this._feature1
            }
                                              .ToList());

            // Act
            var isValid = candidate.IsValid(combination);

            // Assert
            Assert.IsFalse(isValid);
        }