Esempio n. 1
0
        public void SimpleAnd()
        {
            var result = BoolDecomposer.Decompose("x = 1 and y = 2");

            Assert.Equal(2, result.Children.Count);
            Assert.Equal("x = 1", result.Children[0].Statement);
            Assert.Equal("y = 2", result.Children[1].Statement);
        }
Esempio n. 2
0
        public void AndOr()
        {
            var result = BoolDecomposer.Decompose("x = 1 and y = 2 or z = 3");

            Assert.Equal(2, result.Children.Count);
            Assert.Equal("x = 1", result.Children[0].Statement);
            Assert.Equal("y = 2 or z = 3", result.Children[1].Statement);
            Assert.Equal(2, result.Children[1].Children.Count);
            Assert.Equal("y = 2", result.Children[1].Children[0].Statement);
            Assert.Equal("z = 3", result.Children[1].Children[1].Statement);
        }
Esempio n. 3
0
        public void AndOrWithParensInFront()
        {
            var result = BoolDecomposer.Decompose("(x = 1 and y = 2) or z = 3");

            Assert.Equal(2, result.Children.Count);
            Assert.Equal("x = 1 and y = 2", result.Children[0].Statement);
            Assert.Equal("z = 3", result.Children[1].Statement);
            Assert.Equal(2, result.Children[0].Children.Count);
            Assert.Equal("x = 1", result.Children[0].Children[0].Statement);
            Assert.Equal("y = 2", result.Children[0].Children[1].Statement);
            Assert.Equal("and", result.Children[0].Children[1].LeadingOp);
        }
Esempio n. 4
0
 public void Empty()
 {
     Assert.Null(BoolDecomposer.Decompose(""));
 }
Esempio n. 5
0
        public void NoBool()
        {
            var result = BoolDecomposer.Decompose("x = 1");

            Assert.Equal("x = 1", result.Statement);
        }