public void TwoPieces_OneDiagonal()
    {
        var sut = new DiagonalOnlyRestriction();

        var sequence = new LinkedList <ISquarePiece>();

        sequence.AddLast(CreatePiece(1, 1));
        sequence.AddLast(CreatePiece(2, 2));
        sut.SequenceCompleted(sequence.ToArray());

        Assert.IsFalse(sut.ViolatedRestriction());
    }
        public void DiagonalOnlyRestriction_Best4()
        {
            IRestriction restriction = new DiagonalOnlyRestriction();

            var pieces = new string[]
            {
                "1--1",
                "11--",
                "-1-1",
                "--1-"
            };

            BuildGrid(pieces);

            var move = BestMoverChecker.GetBestMove(restriction).Move;

            Assert.AreEqual(4, move.Count);
            Assert.IsFalse(restriction.IsRestrictionViolated(move.ToArray()));
        }