예제 #1
0
        public void CellGroupContainsTest()
        {
            var state = SudokuUtil.CellGroup(1, 3, 0);

            Assert.True(state.Contains(1));
            Assert.False(state.Contains(2));
        }
예제 #2
0
        public void EmptyIndicesTest()
        {
            var allEmpty = SudokuUtil.CellGroup(0, 0, 0).GetEmptyIndices();

            Assert.True(allEmpty.Intersect(new uint[] { 0, 1, 2 }).Count() == 3);

            var noEmpty = SudokuUtil.CellGroup(2, 1, 3).GetEmptyIndices();

            Assert.Empty(noEmpty);
        }
예제 #3
0
        public void MissingValuesTest()
        {
            var noMissing = SudokuUtil.CellGroup(1, 3, 2).GetMissingValues();

            Assert.Empty(noMissing);

            var multipleMissing = SudokuUtil.CellGroup(0, 0, 1).GetMissingValues();

            Assert.True(multipleMissing.Intersect(new uint[] { 2, 3 }).Count() == 2);
        }
예제 #4
0
        public void IsCompletedTest()
        {
            var completed = SudokuUtil.CellGroup(3, 1, 2);

            Assert.True(completed.IsCompleted());

            var unfinished = SudokuUtil.CellGroup(0, 1, 0);

            Assert.False(unfinished.IsCompleted());

            var empty = SudokuUtil.CellGroup(0, 0, 0);

            Assert.False(empty.IsCompleted());
        }