public void TestRanges() { const string test = "SomeEnum ::= INTEGER (8 |10 ..20| 31..60 )"; Lexer lexer = new Lexer(); StringReader reader = new StringReader(test); lexer.Parse(reader); string name = lexer.NextSymbol.ToString(); lexer.NextSymbol.Expect(Symbol.Assign); lexer.NextSymbol.Expect(Symbol.Integer); IntegerType i = new IntegerType("module", "name", lexer); Assert.IsFalse(i.IsEnumeration); Assert.IsTrue(i.Contains(8)); Assert.IsTrue(i.Contains(10)); Assert.IsTrue(i.Contains(15)); Assert.IsTrue(i.Contains(20)); Assert.IsTrue(i.Contains(35)); Assert.IsFalse(i.Contains(4)); Assert.IsFalse(i.Contains(-9)); Assert.IsFalse(i.Contains(25)); Assert.IsFalse(i.Contains(61)); }