Sync
This commit is contained in:
parent
a85169dced
commit
a937b1bc44
15 changed files with 93 additions and 30 deletions
|
@ -108,8 +108,8 @@ class EvaluationTests {
|
|||
val variable2 = Variable("Y")
|
||||
|
||||
val parent = Rule(
|
||||
Structure(Atom("parent"), listOf(variable1, variable2)),
|
||||
/* :- */ Disjunction(
|
||||
Structure(Atom("parent"), listOf(variable1, variable2)), /* :- */
|
||||
Disjunction(
|
||||
Structure(Atom("father"), listOf(variable1, variable2)),
|
||||
/* ; */
|
||||
Structure(Atom("mother"), listOf(variable1, variable2))
|
||||
|
@ -118,10 +118,14 @@ class EvaluationTests {
|
|||
|
||||
Program.load(listOf(father, mother, parent))
|
||||
|
||||
val result1 = Program.query(Structure(Atom("parent"), listOf(Atom("john"), Atom("jimmy"))))
|
||||
assertTrue(result1.toList().isNotEmpty())
|
||||
val result2 = Program.query(Structure(Atom("parent"), listOf(Atom("jane"), Atom("jimmy"))))
|
||||
assertTrue(result2.toList().isNotEmpty())
|
||||
val result1 = Program.query(Structure(Atom("parent"), listOf(Atom("john"), Atom("jimmy")))).toList()
|
||||
assertEquals(1, result1.size, "Expected 1 result")
|
||||
assertTrue(result1[0].isSuccess, "Expected success")
|
||||
assertTrue(result1[0].getOrNull()!!.isEmpty(), "Expected no substitutions")
|
||||
val result2 = Program.query(Structure(Atom("parent"), listOf(Atom("jane"), Atom("jimmy")))).toList()
|
||||
assertEquals(1, result2.size, "Expected 1 result")
|
||||
assertTrue(result2[0].isSuccess, "Expected success")
|
||||
assertTrue(result2[0].getOrNull()!!.isEmpty(), "Expected no substitutions")
|
||||
|
||||
val result3 = Program.query(Structure(Atom("parent"), listOf(Atom("john"), Atom("jane"))))
|
||||
assertFalse(result3.any())
|
||||
|
|
Reference in a new issue