public void testFactNotAddedWhenAlreadyPresent()
{
kingsKB.tell("((King(x) AND Greedy(x)) => Evil(x))");
kingsKB.tell("King(John)");
kingsKB.tell("King(Richard)");
kingsKB.tell("Greedy(John)");
Assert.AreEqual(1, kingsKB.getNumberRules());
Assert.AreEqual(3, kingsKB.getNumberFacts());
kingsKB.tell("King(John)");
kingsKB.tell("King(Richard)");
kingsKB.tell("Greedy(John)");
Assert.AreEqual(1, kingsKB.getNumberRules());
Assert.AreEqual(3, kingsKB.getNumberFacts());
kingsKB.tell("(((King(John))))");
kingsKB.tell("(((King(Richard))))");
kingsKB.tell("(((Greedy(John))))");
Assert.AreEqual(1, kingsKB.getNumberRules());
Assert.AreEqual(3, kingsKB.getNumberFacts());
}
}