public void ParseMateTest() { AssertMate("+4", 4, true); AssertMate("-54", 54, false); AssertMate("+", 0, true); AssertMate("-", 0, false); AssertMate("32", 32, true); AssertMate("+3dts", 3, true); Assert.Catch(() => Score.ParseMate("dde+3dts", BWType.Black)); }
private void AssertMate(string text, int mate, bool isWin) { var score = Score.ParseMate(text, BWType.Black); Assert.AreEqual(ScoreType.Mate, score.ScoreType); Assert.AreEqual(mate, score.Mate); Assert.AreEqual(isWin, score.IsMateWin); Assert.AreEqual(Score.MateScore * (isWin ? +1 : -1), score.Value); score.Neg(); Assert.AreEqual(mate, score.Mate); Assert.AreEqual(!isWin, score.IsMateWin); Assert.AreEqual(Score.MateScore * (isWin ? -1 : +1), score.Value); score.Neg(); Assert.AreEqual(mate, score.Mate); Assert.AreEqual(!!isWin, score.IsMateWin); //Assert.AreEqual(text, score.Text); Assert.AreEqual(Score.MateScore * (isWin ? +1 : -1), score.Value); }