AIMA.Test.Core.Unit.Logic.FOL.CommonFOLInferenceProcedureTests.testEqualityNoAxiomsKBabcAEqualsCSucceeds C# (CSharp) Method

testEqualityNoAxiomsKBabcAEqualsCSucceeds() protected method

protected testEqualityNoAxiomsKBabcAEqualsCSucceeds ( InferenceProcedure infp, bool expectedToFail ) : void
infp InferenceProcedure
expectedToFail bool
return void
        protected void testEqualityNoAxiomsKBabcAEqualsCSucceeds(
                InferenceProcedure infp, bool expectedToFail)
        {
            FOLKnowledgeBase akb = FOLKnowledgeBaseFactory
                    .createABCEqualityKnowledgeBase(infp, false);

            TermEquality query = new TermEquality(new Constant("A"), new Constant(
                    "C"));

            InferenceResult answer = akb.ask(query);

            Assert.IsTrue(null != answer);
            if (expectedToFail)
            {
                Assert.IsTrue(answer.isPossiblyFalse());
                Assert.IsFalse(answer.isTrue());
                Assert.IsFalse(answer.isUnknownDueToTimeout());
                Assert.IsFalse(answer.isPartialResultDueToTimeout());
                Assert.IsTrue(0 == answer.getProofs().Count);
            }
            else
            {
                Assert.IsFalse(answer.isPossiblyFalse());
                Assert.IsTrue(answer.isTrue());
                Assert.IsFalse(answer.isUnknownDueToTimeout());
                Assert.IsFalse(answer.isPartialResultDueToTimeout());
                Assert.IsTrue(1 == answer.getProofs().Count);
                Assert.IsTrue(0 == answer.getProofs()[0]
                        .getAnswerBindings().Count);
            }
        }