diff options
Diffstat (limited to 'test/uk/ac/ox/cs/pagoda/global_tests/TestPagodaFLY.java')
| -rw-r--r-- | test/uk/ac/ox/cs/pagoda/global_tests/TestPagodaFLY.java | 177 |
1 files changed, 89 insertions, 88 deletions
diff --git a/test/uk/ac/ox/cs/pagoda/global_tests/TestPagodaFLY.java b/test/uk/ac/ox/cs/pagoda/global_tests/TestPagodaFLY.java index 42827a0..a0ccb1a 100644 --- a/test/uk/ac/ox/cs/pagoda/global_tests/TestPagodaFLY.java +++ b/test/uk/ac/ox/cs/pagoda/global_tests/TestPagodaFLY.java | |||
| @@ -13,92 +13,93 @@ import java.nio.file.Paths; | |||
| 13 | 13 | ||
| 14 | public class TestPagodaFLY { | 14 | public class TestPagodaFLY { |
| 15 | 15 | ||
| 16 | // @Test(groups = {"light"}) | 16 | // @Test(groups = {"light"}) |
| 17 | public void answersCorrectness_withGJFC() throws IOException { | 17 | public void answersCorrectness_withGJFC() throws IOException { |
| 18 | String ontoDir = TestUtil.getConfig().getProperty("ontoDir"); | 18 | String ontoDir = TestUtil.getConfig().getProperty("ontoDir"); |
| 19 | Path answers = Paths.get(File.createTempFile("answers", ".json").getAbsolutePath()); | 19 | Path answers = Paths.get(File.createTempFile("answers", ".json").getAbsolutePath()); |
| 20 | new File(answers.toString()).deleteOnExit(); | 20 | new File(answers.toString()).deleteOnExit(); |
| 21 | Path givenAnswers = TestUtil.getAnswersFilePath("answers/pagoda-fly-with-GJ-FC-individuals.json"); | 21 | Path givenAnswers = TestUtil.getAnswersFilePath("answers/pagoda-fly-with-GJ-FC-individuals.json"); |
| 22 | 22 | ||
| 23 | Pagoda pagoda = Pagoda.builder() | 23 | Pagoda pagoda = Pagoda.builder() |
| 24 | .ontology(Paths.get(ontoDir, "fly/fly_anatomy_XP_with_GJ_FC_individuals.owl")) | 24 | .ontology(Paths.get(ontoDir, "fly/fly_anatomy_XP_with_GJ_FC_individuals.owl")) |
| 25 | .query(Paths.get(ontoDir, "fly/queries/fly.sparql")) | 25 | .query(Paths.get(ontoDir, "fly/queries/fly.sparql")) |
| 26 | .answer(answers) | 26 | .answer(answers) |
| 27 | .classify(false) | 27 | .classify(false) |
| 28 | .hermit(true) | 28 | .hermit(true) |
| 29 | .build(); | 29 | .build(); |
| 30 | 30 | ||
| 31 | pagoda.run(); | 31 | pagoda.run(); |
| 32 | CheckAnswers.assertSameAnswers(answers, givenAnswers); | 32 | CheckAnswers.assertSameAnswers(answers, givenAnswers); |
| 33 | } | 33 | } |
| 34 | 34 | ||
| 35 | @Test(groups = {"light"}) | 35 | @Test(groups = {"light"}) |
| 36 | public void answersCorrectness_rolledUp() throws IOException { | 36 | public void answersCorrectness_rolledUp() throws IOException { |
| 37 | String ontoDir = TestUtil.getConfig().getProperty("ontoDir"); | 37 | String ontoDir = TestUtil.getConfig().getProperty("ontoDir"); |
| 38 | Path answers = Paths.get(File.createTempFile("answers", ".json").getAbsolutePath()); | 38 | Path answers = Paths.get(File.createTempFile("answers", ".json").getAbsolutePath()); |
| 39 | new File(answers.toString()).deleteOnExit(); | 39 | new File(answers.toString()).deleteOnExit(); |
| 40 | Path givenAnswers = TestUtil.getAnswersFilePath("answers/pagoda-fly-rolledup.json"); | 40 | Path givenAnswers = TestUtil.getAnswersFilePath("answers/pagoda-fly-rolledup.json"); |
| 41 | 41 | ||
| 42 | Pagoda pagoda = Pagoda.builder() | 42 | Pagoda pagoda = Pagoda.builder() |
| 43 | .ontology(Paths.get(ontoDir, "fly/fly_rolledUp.owl")) | 43 | .ontology(Paths.get(ontoDir, "fly/fly_rolledUp.owl")) |
| 44 | .query(Paths.get(ontoDir, "fly/queries/fly_rolledUp.sparql")) | 44 | .query(Paths.get(ontoDir, "fly/queries/fly_rolledUp.sparql")) |
| 45 | .answer(answers) | 45 | .answer(answers) |
| 46 | .answer(Paths.get("/home/alessandro/Desktop/answers.json")) | 46 | .answer(Paths.get("/home/alessandro/Desktop/answers.json")) |
| 47 | .classify(false) | 47 | .classify(false) |
| 48 | .hermit(true) | 48 | .hermit(true) |
| 49 | .build(); | 49 | .build(); |
| 50 | 50 | ||
| 51 | pagoda.run(); | 51 | pagoda.run(); |
| 52 | CheckAnswers.assertSameAnswers(answers, givenAnswers); | 52 | CheckAnswers.assertSameAnswers(answers, givenAnswers); |
| 53 | } | 53 | } |
| 54 | 54 | ||
| 55 | @Test(groups = {"light", "justExecute"}) | 55 | @Test(groups = {"light", "justExecute"}) |
| 56 | public void justExecute_newQueries() throws IOException { | 56 | public void justExecute_newQueries() throws IOException { |
| 57 | String ontoDir = TestUtil.getConfig().getProperty("ontoDir"); | 57 | String ontoDir = TestUtil.getConfig().getProperty("ontoDir"); |
| 58 | 58 | ||
| 59 | Pagoda pagoda = Pagoda.builder() | 59 | Pagoda.builder() |
| 60 | .ontology(Paths.get(ontoDir, "fly/fly_rolledUp.owl")) | 60 | .ontology(Paths.get(ontoDir, "fly/fly_rolledUp.owl")) |
| 61 | // .ontology(Paths.get(ontoDir, "fly/fly_anatomy_XP_with_GJ_FC_individuals.owl")) | 61 | // .ontology(Paths.get(ontoDir, "fly/fly_anatomy_XP_with_GJ_FC_individuals.owl")) |
| 62 | .query(Paths.get(ontoDir, "fly/queries/new_queries.sparql")) | 62 | .query(Paths.get(ontoDir, "fly/queries/new_queries.sparql")) |
| 63 | // .answer(Paths.get("/home/alessandro/Desktop/answers.json")) | 63 | // .answer(Paths.get("/home/alessandro/Desktop/answers.json")) |
| 64 | .classify(false) | 64 | .classify(false) |
| 65 | .hermit(true) | 65 | .hermit(true) |
| 66 | .skolem(false) | 66 | .skolem(true) |
| 67 | .build(); | 67 | .build() |
| 68 | 68 | .run(); | |
| 69 | pagoda.run(); | 69 | } |
| 70 | } | 70 | |
| 71 | 71 | @Test(groups = {"light", "comparison"}) | |
| 72 | @Test(groups = {"light", "comparison"}) | 72 | public void compare_newQueries() throws IOException { |
| 73 | public void compare_newQueries() throws IOException { | 73 | String ontoDir = TestUtil.getConfig().getProperty("ontoDir"); |
| 74 | String ontoDir = TestUtil.getConfig().getProperty("ontoDir"); | 74 | |
| 75 | 75 | Timer timer = new Timer(); | |
| 76 | Timer timer = new Timer(); | 76 | Pagoda.builder() |
| 77 | Pagoda.builder() | 77 | .ontology(Paths.get(ontoDir, "fly/fly_rolledUp.owl")) |
| 78 | .ontology(Paths.get(ontoDir, "fly/fly_rolledUp.owl")) | 78 | .query(Paths.get(ontoDir, "fly/queries/new_queries.sparql")) |
| 79 | .query(Paths.get(ontoDir, "fly/queries/new_queries.sparql")) | 79 | .classify(false) |
| 80 | .classify(false) | 80 | .hermit(true) |
| 81 | .hermit(true) | 81 | .skolem(true) // <----<< Skolem upper bound is ENABLED <<< |
| 82 | .skolem(true) // <----<< Skolem upper bound is ENABLED <<< | 82 | .build() |
| 83 | .build() | 83 | .run(); |
| 84 | .run(); | 84 | double t1 = timer.duration(); |
| 85 | double t1 = timer.duration(); | 85 | |
| 86 | 86 | timer.reset(); | |
| 87 | timer.reset(); | 87 | |
| 88 | 88 | Pagoda.builder() | |
| 89 | Pagoda.builder() | 89 | .ontology(Paths.get(ontoDir, "fly/fly_rolledUp.owl")) |
| 90 | .ontology(Paths.get(ontoDir, "fly/fly_rolledUp.owl")) | 90 | .query(Paths.get(ontoDir, "fly/queries/new_queries.sparql")) |
| 91 | .query(Paths.get(ontoDir, "fly/queries/new_queries.sparql")) | 91 | .classify(false) |
| 92 | .classify(false) | 92 | .hermit(true) |
| 93 | .hermit(true) | 93 | .skolem(false) // <----<< Skolem upper bound is DISABLED <<< |
| 94 | .skolem(false) // <----<< Skolem upper bound is DISABLED <<< | 94 | .build() |
| 95 | .build() | 95 | .run(); |
| 96 | .run(); | 96 | double t2 = timer.duration(); |
| 97 | double t2 = timer.duration(); | 97 | |
| 98 | 98 | if(t1 < t2) | |
| 99 | if(t1 < t2) | 99 | TestUtil.logInfo( |
| 100 | TestUtil.logInfo("Overall reasoning with Skolem upper bound was " + (int) (t2 / t1 * 100 - 100) + "x faster!"); | 100 | "Overall reasoning with Skolem upper bound was " + (int) (t2 / t1 * 100 - 100) + "x faster!"); |
| 101 | else | 101 | else |
| 102 | TestUtil.logInfo("Overall reasoning with Skolem upper bound was " + (int) (t1 / t2 * 100 - 100) + "x slower..."); | 102 | TestUtil.logInfo( |
| 103 | } | 103 | "Overall reasoning with Skolem upper bound was " + (int) (t1 / t2 * 100 - 100) + "x slower..."); |
| 104 | } | ||
| 104 | } | 105 | } |
