コード例 #1
0
ファイル: Tests.cs プロジェクト: 0sk4r/Uwr
        public void TestNegationExpression()
        {
            AbstractExpression expr1 = new ConstExpression(true);
            AbstractExpression expr2 = new NegationExpression(expr1);

            Assert.AreEqual(expr2.interpret(_context), false);
        }
コード例 #2
0
ファイル: Tests.cs プロジェクト: 0sk4r/Uwr
        public void TestDisjunctionFalseExpression()
        {
            AbstractExpression expr1 = new ConstExpression(false);
            AbstractExpression expr2 = new ConstExpression(false);
            AbstractExpression expr3 = new ConjunctionExpression(expr1, expr2);

            Assert.AreEqual(expr3.interpret(_context), false);
        }
コード例 #3
0
ファイル: Tests.cs プロジェクト: 0sk4r/Uwr
        public void TestConjunctionTrueExpression()
        {
            AbstractExpression expr1 = new ConstExpression(true);
            AbstractExpression expr2 = new ConstExpression(true);
            AbstractExpression expr3 = new ConjunctionExpression(expr1, expr2);

            Assert.AreEqual(expr3.interpret(_context), true);
        }
コード例 #4
0
ファイル: Tests.cs プロジェクト: 0sk4r/Uwr
        public void TestComplexExpression()
        {
            _context.setValue("x", true);
            _context.setValue("y", false);

            // (x v y ) n true
            AbstractExpression xExpr    = new VariableExpression("x");
            AbstractExpression yExpr    = new VariableExpression("y");
            AbstractExpression trueExpr = new ConstExpression(true);

            AbstractExpression orExpr  = new DisjunctionExpression(xExpr, yExpr);
            AbstractExpression andExpr = new ConjunctionExpression(orExpr, trueExpr);

            Assert.AreEqual(andExpr.interpret(_context), true);
        }
コード例 #5
0
ファイル: Tests.cs プロジェクト: 0sk4r/Uwr
        public void TestConstExpression()
        {
            AbstractExpression expr = new ConstExpression(true);

            Assert.AreEqual(expr.interpret(_context), true);
        }