diff options
author | Federico Igne <federico.igne@cs.ox.ac.uk> | 2020-10-09 19:16:44 +0200 |
---|---|---|
committer | Federico Igne <federico.igne@cs.ox.ac.uk> | 2020-10-09 19:16:44 +0200 |
commit | 34d18836c5a59c73a672328e65c842fc75ddb5e1 (patch) | |
tree | 5df411d558d5976d22340857f9213b0a7e0df0ef /src/test/scala/rsacomb | |
parent | 733d962f27631cfb41de7b47d1fcec35b439537b (diff) | |
download | RSAComb-34d18836c5a59c73a672328e65c842fc75ddb5e1.tar.gz RSAComb-34d18836c5a59c73a672328e65c842fc75ddb5e1.zip |
Add skeleton file for CanonicalModel testing
Diffstat (limited to 'src/test/scala/rsacomb')
-rw-r--r-- | src/test/scala/rsacomb/CanonicalModelSpec.scala | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/test/scala/rsacomb/CanonicalModelSpec.scala b/src/test/scala/rsacomb/CanonicalModelSpec.scala new file mode 100644 index 0000000..44c4441 --- /dev/null +++ b/src/test/scala/rsacomb/CanonicalModelSpec.scala | |||
@@ -0,0 +1,46 @@ | |||
1 | package rsacomb | ||
2 | |||
3 | import java.io.File | ||
4 | import org.scalatest.{FlatSpec, Matchers, LoneElement} | ||
5 | |||
6 | import org.semanticweb.owlapi.model._ | ||
7 | import uk.ac.manchester.cs.owl.owlapi._ | ||
8 | |||
9 | import tech.oxfordsemantic.jrdfox.logic.{Rule, Variable} | ||
10 | |||
11 | import scala.collection.JavaConverters._ | ||
12 | |||
13 | import rsacomb.RSA._ | ||
14 | import rsacomb.RDFoxUtil._ | ||
15 | |||
16 | object CanonicalModelSpec { | ||
17 | |||
18 | val ontology1_path: File = new File("examples/example1.owl") | ||
19 | val ontology1 = RSA.loadOntology(ontology1_path) | ||
20 | val program1 = ontology1.canonicalModel | ||
21 | |||
22 | val axiom1 = new OWLSubClassOfAxiomImpl( | ||
23 | new OWLClassImpl(RSA.base("A")), | ||
24 | new OWLClassImpl(RSA.base("D")), | ||
25 | Seq().asJava | ||
26 | ) | ||
27 | |||
28 | } // object OWLAxiomSpec | ||
29 | |||
30 | class CanonicalModelSpec extends FlatSpec with Matchers with LoneElement { | ||
31 | |||
32 | import CanonicalModelSpec._ | ||
33 | |||
34 | // Example 1 | ||
35 | "The program generated from Example1" should "not be empty" in { | ||
36 | program1 should not be empty | ||
37 | } | ||
38 | |||
39 | axiom1.toString should "be converted into a single Rule" in { | ||
40 | val varX = Variable.create("X") | ||
41 | val visitor = ProgramGenerator(ontology1, varX) | ||
42 | val rules = axiom1.accept(visitor) | ||
43 | rules.loneElement shouldBe a[Rule] | ||
44 | } | ||
45 | |||
46 | } // class OWLAxiomSpec | ||