Example #1
0
        public void ShouldShrink()
        {
            // Setup
            var val = new DummyCspValue("Y");

            // Act
            _sut.Shrink(val);

            // Verify
            Assert.True(_sut.Values.Exists(v => v.C == val.C));
            Assert.False(_sut.Pruned.Any());
            Assert.Single(_sut.Values);
            Assert.False(_sut.RemovedByGuess.Any());
        }
Example #2
0
        public void ShouldPruneAValue()
        {
            // Setup
            var val = new DummyCspValue("Y");

            // Act
            _sut.Prune(val);

            // Verify
            Assert.True(!_sut.Values.Exists(v => v.C == val.C));
            Assert.True(_sut.Pruned.Exists(v => v.C == val.C));
            Assert.True(!_sut.RemovedByGuess.Exists(v => v.C == val.C));

            // Act
            _sut.RestorePruned();

            // Verify
            Assert.True(_sut.Values.Exists(v => v.C == val.C));
            Assert.True(!_sut.Pruned.Exists(v => v.C == val.C));
            Assert.True(!_sut.RemovedByGuess.Exists(v => v.C == val.C));
        }
Example #3
0
 private static bool Eval(string a, DummyCspValue aVal, string b, DummyCspValue bVal)
 {
     return(aVal != bVal);
 }