[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/base/qrdf/test
From:       Daniele Galdi <daniele.galdi () gmail ! com>
Date:       2006-12-23 16:19:44
Message-ID: 1166890784.364973.13613.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 616091 by dagnele:

Added test about a Soprano bug



 M  +33 -0     SopranoModelTest.cpp  
 M  +4 -2      SopranoModelTest.h  


--- trunk/playground/base/qrdf/test/SopranoModelTest.cpp #616090:616091
@@ -135,6 +135,8 @@
   QVERIFY( m_model->contains( st1 ) );
   QVERIFY( m_model->contains( st2 ) );
   QVERIFY( !m_model->contains( st3 ) );
+
+  delete memory;
 }
 
 void SopranoModelTest::testAddStatements()
@@ -382,4 +384,35 @@
   QVERIFY( cnt2 == 2 );
 }
 
+void SopranoModelTest::testCloseStatementIteratorOnModelDelete()
+{
+  Node subject1 = m_model->createResource( QUrl("uri:add:model") );
+
+  Node predicate1 = m_model->createPredicate( "soprano", "predicate1" );
+  Node predicate2 = m_model->createPredicate( "soprano", "predicate2" );
+  Node predicate3 = m_model->createPredicate( "soprano", "predicate3" );
+
+  Node object1 = m_model->createLiteral( "Literal value1" );
+
+  Statement st1(subject1, predicate1, object1);
+  Statement st2(subject1, predicate2, object1);
+  Statement st3(subject1, predicate3, object1);
+
+  Model *model = m_factory->createPersistentModel( "test-close" );
+  model->add( st1 );
+  model->add( st2 );
+ 
+  StatementIterator it = model->listStatements();
+  int cnt = 0;
+  while( it.hasNext() ) 
+  {
+    it.next();
+    cnt++;
+  }
+  
+  delete model;
+
+  QVERIFY( cnt == 2 );
+}
+
 #include "SopranoModelTest.moc"
--- trunk/playground/base/qrdf/test/SopranoModelTest.h #616090:616091
@@ -35,6 +35,9 @@
 Q_OBJECT
 
 private Q_SLOTS:
+  void init();
+  void cleanup();
+
   void testAddModel();   
   void testAddListOfStatement(); 
   void testAddStatementIterator();
@@ -49,8 +52,7 @@
   void testBooleanQuery();
   void testQuery();
 
-  void init();
-  void cleanup();
+  void testCloseStatementIteratorOnModelDelete();
 
 protected:
    Soprano::Statement* m_st1;
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic