You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by wi...@apache.org on 2016/05/02 11:49:48 UTC
[11/50] [abbrv] marmotta git commit: more testing
more testing
Project: http://git-wip-us.apache.org/repos/asf/marmotta/repo
Commit: http://git-wip-us.apache.org/repos/asf/marmotta/commit/622a3009
Tree: http://git-wip-us.apache.org/repos/asf/marmotta/tree/622a3009
Diff: http://git-wip-us.apache.org/repos/asf/marmotta/diff/622a3009
Branch: refs/heads/MARMOTTA-584
Commit: 622a30099d3ed004de3d1869fe42f867d5bf81b7
Parents: 299272a
Author: Sebastian Schaffert <ss...@apache.org>
Authored: Sat Dec 19 16:53:28 2015 +0100
Committer: Sebastian Schaffert <ss...@apache.org>
Committed: Sat Dec 19 16:53:28 2015 +0100
----------------------------------------------------------------------
.../ostrich/backend/test/PersistenceTest.cc | 53 +++++++++++++++++++-
1 file changed, 52 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/marmotta/blob/622a3009/libraries/ostrich/backend/test/PersistenceTest.cc
----------------------------------------------------------------------
diff --git a/libraries/ostrich/backend/test/PersistenceTest.cc b/libraries/ostrich/backend/test/PersistenceTest.cc
index 9878cd6..fdfc604 100644
--- a/libraries/ostrich/backend/test/PersistenceTest.cc
+++ b/libraries/ostrich/backend/test/PersistenceTest.cc
@@ -16,6 +16,8 @@
using namespace boost::filesystem;
+using testing::Contains;
+
namespace marmotta {
namespace rdf {
namespace proto {
@@ -42,7 +44,7 @@ class PersistenceTest : public ::testing::Test {
}
~PersistenceTest() {
- LOG(INFO) << "Destroying Test DB";
+ LOG(INFO) << "Destroying Test DB: " << testdir.string();
delete db;
remove_all(testdir);
}
@@ -71,6 +73,55 @@ TEST_F(PersistenceTest, TestAddStatements) {
}
}
+
+TEST_F(PersistenceTest, TestGetStatements) {
+ std::vector<rdf::proto::Statement> stmts = {
+ rdf::Statement(rdf::URI("http://example.com/s1"), rdf::URI("http://example.com/p1"),
+ rdf::URI("http://example.com/o1")).getMessage(),
+ rdf::Statement(rdf::URI("http://example.com/s2"), rdf::URI("http://example.com/p1"),
+ rdf::URI("http://example.com/o1")).getMessage(),
+ rdf::Statement(rdf::URI("http://example.com/s1"), rdf::URI("http://example.com/p2"),
+ rdf::URI("http://example.com/o2")).getMessage(),
+ rdf::Statement(rdf::URI("http://example.com/s2"), rdf::URI("http://example.com/p2"),
+ rdf::URI("http://example.com/o2")).getMessage(),
+ rdf::Statement(rdf::URI("http://example.com/s1"), rdf::URI("http://example.com/p3"),
+ rdf::URI("http://example.com/o3")).getMessage(),
+ };
+
+ util::CollectionIterator<rdf::proto::Statement> it(stmts);
+ db->AddStatements(it);
+
+ EXPECT_EQ(5, db->Size());
+
+ rdf::Statement pattern1;
+ pattern1.setSubject(rdf::URI("http://example.com/s1"));
+ auto it1 = db->GetStatements(pattern1.getMessage());
+ for (int i=0; i<3; i++) {
+ ASSERT_TRUE(it1->hasNext());
+ EXPECT_THAT(stmts, Contains(it1->next()));
+ }
+ EXPECT_FALSE(it1->hasNext());
+
+ rdf::Statement pattern2;
+ pattern2.setObject(rdf::URI("http://example.com/o1"));
+ auto it2 = db->GetStatements(pattern2.getMessage());
+ for (int i=0; i<2; i++) {
+ ASSERT_TRUE(it2->hasNext());
+ EXPECT_THAT(stmts, Contains(it2->next()));
+ }
+ EXPECT_FALSE(it2->hasNext());
+
+ rdf::Statement pattern3;
+ pattern2.setPredicate(rdf::URI("http://example.com/p1"));
+ auto it3 = db->GetStatements(pattern2.getMessage());
+ for (int i=0; i<2; i++) {
+ ASSERT_TRUE(it3->hasNext());
+ EXPECT_THAT(stmts, Contains(it3->next()));
+ }
+ EXPECT_FALSE(it3->hasNext());
+}
+
+
}
}
}