public void GameParserCanParseGo()
        {
            var parsed = SpecialSgfPropertyValueParsers.GameParser("1") as SgfNumberValue;

            Assert.IsNotNull(parsed);
            Assert.AreEqual(1, parsed.Value);
        }
        public void SizePropertyParserWorksWithSingleNumber()
        {
            var sizeValue  = SpecialSgfPropertyValueParsers.SizeParser("12");
            var sizeNumber = sizeValue as SgfNumberValue;

            Assert.IsNotNull(sizeNumber);
            Assert.AreEqual(12, sizeNumber.Value);
        }
        public void NumberRangedNumberParserCanParseNumberInRange()
        {
            var parser = SpecialSgfPropertyValueParsers.RangedNumberParser(3, 10);
            var parsed = parser("5") as SgfNumberValue;

            Assert.IsNotNull(parsed);
            Assert.AreEqual(5, parsed.Value);
        }
        public void FigureParserCanReadPointCompose()
        {
            var parsed = SpecialSgfPropertyValueParsers.FigureParser("1:Hello") as SgfComposePropertyValue <int, string>;

            Assert.IsNotNull(parsed);
            Assert.AreEqual(1, parsed.LeftValue);
            Assert.AreEqual("Hello", parsed.RightValue);
        }
        public void SizePropertyParserWorksWithTwoDimensions()
        {
            var sizeValue  = SpecialSgfPropertyValueParsers.SizeParser("12:20");
            var sizeNumber = sizeValue as SgfComposePropertyValue <int, int>;

            Assert.IsNotNull(sizeNumber);
            Assert.AreEqual(12, sizeNumber.LeftValue);
            Assert.AreEqual(20, sizeNumber.RightValue);
        }
 public void GameParserCantParseNull()
 {
     SpecialSgfPropertyValueParsers.GameParser(null);
 }
 public void GameParserCantParseOtherValueThanGo()
 {
     SpecialSgfPropertyValueParsers.GameParser("2");
 }
        public void NumberRangedNumberParserCantParseNumberAboveRange()
        {
            var parser = SpecialSgfPropertyValueParsers.RangedNumberParser(3, 10);

            parser("30");
        }
 public void RangedNumberParserThrowsForInvalidRange()
 {
     SpecialSgfPropertyValueParsers.RangedNumberParser(5, 2);
 }
        public void FigureParserReturnsNullForNoneValue()
        {
            var none = SpecialSgfPropertyValueParsers.FigureParser("");

            Assert.IsNull(none);
        }
 public void FigureParserCantParseNull()
 {
     SpecialSgfPropertyValueParsers.FigureParser(null);
 }