From: <tho...@us...> - 2011-07-07 21:56:32
|
Revision: 4860 http://bigdata.svn.sourceforge.net/bigdata/?rev=4860&view=rev Author: thompsonbry Date: 2011-07-07 21:56:25 +0000 (Thu, 07 Jul 2011) Log Message: ----------- Bug fix to unit test which was using MockIVs which corresponded to IVs actually present in the SPO index. The test now uses real IVs. The bug in this unit test was uncovered in addressing [1]. [1] https://sourceforge.net/apps/trac/bigdata/ticket/349 Modified Paths: -------------- branches/BIGDATA_RELEASE_1_0_0/bigdata-rdf/src/test/com/bigdata/rdf/store/TestLocalTripleStoreTransactionSemantics.java branches/TERMS_REFACTOR_BRANCH/bigdata-rdf/src/test/com/bigdata/rdf/store/TestLocalTripleStoreTransactionSemantics.java Modified: branches/BIGDATA_RELEASE_1_0_0/bigdata-rdf/src/test/com/bigdata/rdf/store/TestLocalTripleStoreTransactionSemantics.java =================================================================== --- branches/BIGDATA_RELEASE_1_0_0/bigdata-rdf/src/test/com/bigdata/rdf/store/TestLocalTripleStoreTransactionSemantics.java 2011-07-07 19:36:48 UTC (rev 4859) +++ branches/BIGDATA_RELEASE_1_0_0/bigdata-rdf/src/test/com/bigdata/rdf/store/TestLocalTripleStoreTransactionSemantics.java 2011-07-07 21:56:25 UTC (rev 4860) @@ -2,15 +2,14 @@ import java.io.IOException; import java.util.Properties; + import org.openrdf.model.Statement; + import com.bigdata.journal.IIndexManager; import com.bigdata.journal.ITransactionService; import com.bigdata.journal.ITx; import com.bigdata.journal.Journal; import com.bigdata.rdf.axioms.NoAxioms; -import com.bigdata.rdf.internal.IV; -import com.bigdata.rdf.internal.TermId; -import com.bigdata.rdf.internal.VTE; import com.bigdata.rdf.model.BigdataURI; import com.bigdata.rdf.model.BigdataValue; import com.bigdata.rdf.model.BigdataValueFactory; @@ -40,21 +39,40 @@ } + /* + * Note: This does not test much. + */ public void test_commit1() { final LocalTripleStore store = (LocalTripleStore) getStore(); + try { - final IV s = new TermId(VTE.URI, 1); - final IV p = new TermId(VTE.URI, 2); - final IV o = new TermId(VTE.URI, 3); + final BigdataValueFactory f = store.getValueFactory(); + + final BigdataValue s = f.createURI("http://www.bigdata.com/s"); + final BigdataValue p = f.createURI("http://www.bigdata.com/p"); + final BigdataValue o = f.createURI("http://www.bigdata.com/o"); + + final BigdataValue[] values = new BigdataValue[]{s,p,o}; + + store.getLexiconRelation() + .addTerms(values, values.length, false/* readOnly */); + + assertFalse(store.hasStatement(s.getIV(), p.getIV(), o.getIV())); + // add the statement. store.addStatements(new SPO[] { // - new SPO(s, p, o, StatementEnum.Explicit) // + new SPO(s.getIV(), p.getIV(), o.getIV(), StatementEnum.Explicit) // },// 1); + + assertTrue(store.hasStatement(s.getIV(), p.getIV(), o.getIV())); + } finally { + store.__tearDownUnitTest(); + } } @@ -126,25 +144,38 @@ private static final long serialVersionUID = 1L; } + BigdataValue s = null, p = null, o = null; + final LocalTripleStore store = (LocalTripleStore) getStore(); - // Should be a nop. - store.abort(); - - final IV s = new TermId(VTE.URI, 1); - final IV p = new TermId(VTE.URI, 2); - final IV o = new TermId(VTE.URI, 3); +// final IV s = new TermId(VTE.URI, 1); +// final IV p = new TermId(VTE.URI, 2); +// final IV o = new TermId(VTE.URI, 3); try { + // Should be a nop. + store.abort(); + + final BigdataValueFactory f = store.getValueFactory(); + + s = f.createURI("http://www.bigdata.com/s"); + p = f.createURI("http://www.bigdata.com/p"); + o = f.createURI("http://www.bigdata.com/o"); + + final BigdataValue[] values = new BigdataValue[]{s,p,o}; + + store.getLexiconRelation() + .addTerms(values, values.length, false/* readOnly */); + // add the statement. store.addStatements(new SPO[] { // - new SPO(s, p, o, StatementEnum.Explicit) // + new SPO(s.getIV(), p.getIV(), o.getIV(), StatementEnum.Explicit) // },// 1); // visible in the repo. - assertTrue(store.hasStatement(s, p, o)); + assertTrue(store.hasStatement(s.getIV(), p.getIV(), o.getIV())); throw new AbortException(); @@ -154,7 +185,7 @@ store.abort(); // no longer visible in the repo. - assertFalse(store.hasStatement(s, p, o)); + assertFalse(store.hasStatement(s.getIV(), p.getIV(), o.getIV())); } catch (Throwable t) { Modified: branches/TERMS_REFACTOR_BRANCH/bigdata-rdf/src/test/com/bigdata/rdf/store/TestLocalTripleStoreTransactionSemantics.java =================================================================== --- branches/TERMS_REFACTOR_BRANCH/bigdata-rdf/src/test/com/bigdata/rdf/store/TestLocalTripleStoreTransactionSemantics.java 2011-07-07 19:36:48 UTC (rev 4859) +++ branches/TERMS_REFACTOR_BRANCH/bigdata-rdf/src/test/com/bigdata/rdf/store/TestLocalTripleStoreTransactionSemantics.java 2011-07-07 21:56:25 UTC (rev 4860) @@ -10,9 +10,6 @@ import com.bigdata.journal.ITx; import com.bigdata.journal.Journal; import com.bigdata.rdf.axioms.NoAxioms; -import com.bigdata.rdf.internal.IV; -import com.bigdata.rdf.internal.MockTermIdFactory; -import com.bigdata.rdf.internal.VTE; import com.bigdata.rdf.model.BigdataURI; import com.bigdata.rdf.model.BigdataValue; import com.bigdata.rdf.model.BigdataValueFactory; @@ -42,25 +39,42 @@ } + /* + * Note: This does not test much. + */ public void test_commit1() { final LocalTripleStore store = (LocalTripleStore) getStore(); + try { - final MockTermIdFactory f = new MockTermIdFactory(); + final BigdataValueFactory f = store.getValueFactory(); + + final BigdataValue s = f.createURI("http://www.bigdata.com/s"); + final BigdataValue p = f.createURI("http://www.bigdata.com/p"); + final BigdataValue o = f.createURI("http://www.bigdata.com/o"); + + final BigdataValue[] values = new BigdataValue[]{s,p,o}; - final IV<?,?> s = f.newTermId(VTE.URI); - final IV<?,?> p = f.newTermId(VTE.URI); - final IV<?,?> o = f.newTermId(VTE.URI); + store.getLexiconRelation() + .addTerms(values, values.length, false/* readOnly */); + assertFalse(store.hasStatement(s.getIV(), p.getIV(), o.getIV())); + // add the statement. store.addStatements(new SPO[] { // - new SPO(s, p, o, StatementEnum.Explicit) // + new SPO(s.getIV(), p.getIV(), o.getIV(), StatementEnum.Explicit) // },// 1); + + assertTrue(store.hasStatement(s.getIV(), p.getIV(), o.getIV())); + } finally { + store.__tearDownUnitTest(); + } + } // /** @@ -127,16 +141,18 @@ */ public void test_abort() { - final MockTermIdFactory f = new MockTermIdFactory(); - - final IV<?,?> s = f.newTermId(VTE.URI); - final IV<?,?> p = f.newTermId(VTE.URI); - final IV<?,?> o = f.newTermId(VTE.URI); +// final MockTermIdFactory f = new MockTermIdFactory(); +// +// final IV<?,?> s = f.newTermId(VTE.URI); +// final IV<?,?> p = f.newTermId(VTE.URI); +// final IV<?,?> o = f.newTermId(VTE.URI); class AbortException extends RuntimeException { private static final long serialVersionUID = 1L; } + BigdataValue s = null, p = null, o = null; + final LocalTripleStore store = (LocalTripleStore) getStore(); try { @@ -144,14 +160,25 @@ // Should be a nop. store.abort(); + final BigdataValueFactory f = store.getValueFactory(); + + s = f.createURI("http://www.bigdata.com/s"); + p = f.createURI("http://www.bigdata.com/p"); + o = f.createURI("http://www.bigdata.com/o"); + + final BigdataValue[] values = new BigdataValue[]{s,p,o}; + + store.getLexiconRelation() + .addTerms(values, values.length, false/* readOnly */); + // add the statement. store.addStatements(new SPO[] { // - new SPO(s, p, o, StatementEnum.Explicit) // + new SPO(s.getIV(), p.getIV(), o.getIV(), StatementEnum.Explicit) // },// 1); // visible in the repo. - assertTrue(store.hasStatement(s, p, o)); + assertTrue(store.hasStatement(s.getIV(), p.getIV(), o.getIV())); throw new AbortException(); @@ -161,7 +188,7 @@ store.abort(); // no longer visible in the repo. - assertFalse(store.hasStatement(s, p, o)); + assertFalse(store.hasStatement(s.getIV(), p.getIV(), o.getIV())); } catch (Throwable t) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |