You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2013/09/12 18:13:08 UTC
svn commit: r1522648 - in
/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb: ./ graph/ store/
transaction/
Author: andy
Date: Thu Sep 12 16:13:07 2013
New Revision: 1522648
URL: http://svn.apache.org/r1522648
Log:
JENA-553 : tidy up running on Windows.
Modified:
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/ConfigTest.java
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/TestTDBFactory.java
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/graph/TestPrefixMappingTDB.java
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/AbstractStoreConnections.java
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestDatasetTDBPersist.java
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestGraphTDB.java
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/AbstractTestTransSequentialDisk.java
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestNodeTableTransDisk.java
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransRestart.java
jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransactionTDB.java
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/ConfigTest.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/ConfigTest.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/ConfigTest.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/ConfigTest.java Thu Sep 12 16:13:07 2013
@@ -18,31 +18,42 @@
package com.hp.hpl.jena.tdb;
+import com.hp.hpl.jena.tdb.sys.SystemTDB ;
+
import org.apache.jena.atlas.lib.FileOps ;
public class ConfigTest
{
- // Place under target - it wil not be included in Apache source-release.
+ // Place under target
private static final String testingDir = "target/tdb-testing" ;
private static final String testingDirDB = "target/tdb-testing/DB" ;
- // See also "testing/Assembler/*.ttl" that uses the temp area for testing
+ static boolean nonDeleteableMMapFiles = SystemTDB.isWindows ;
static boolean initialized = false ;
private static void init()
{
- if ( ! initialized )
- {
- FileOps.ensureDir("target") ;
- FileOps.ensureDir(testingDir) ;
- FileOps.ensureDir(testingDirDB) ;
- }
+ if ( initialized )
+ return ;
+ FileOps.ensureDir("target") ;
+ FileOps.ensureDir(testingDir) ;
+ FileOps.ensureDir(testingDirDB) ;
+ initialized = true ;
}
private static int count = 0 ;
- /** Get a empty directory name that has not been used before in this JVM */
- public static final String getTestingDirUnique()
+ /** return a directory */
+ public static final String getCleanDir() {
+ init() ;
+ String dir = nonDeleteableMMapFiles ? getTestingDirUnique() : getTestingDirDB() ;
+ FileOps.ensureDir(dir);
+ FileOps.clearDirectory(dir) ;
+ return dir ;
+ }
+ /** Get a empty directory name that has not been used before in this JVM */
+
+ private static final String getTestingDirUnique()
{
init() ;
String dn = testingDir+"/D-"+(++count) ;
@@ -57,9 +68,19 @@ public class ConfigTest
return testingDir ;
}
+ public static final void deleteTestingDir()
+ {
+ if ( ! FileOps.exists(testingDir) )
+ return ;
+ deleteTestingDirDB() ;
+ FileOps.clearDirectory(testingDir) ;
+ FileOps.deleteSilent(testingDir) ;
+ }
+
public static final String getTestingDirDB()
{
init() ;
+ FileOps.ensureDir(testingDirDB) ;
return testingDirDB ;
}
@@ -71,12 +92,4 @@ public class ConfigTest
FileOps.deleteSilent(testingDirDB) ;
}
- public static final void deleteTestingDir()
- {
- if ( ! FileOps.exists(testingDir) )
- return ;
- deleteTestingDirDB() ;
- FileOps.clearDirectory(testingDir) ;
- FileOps.deleteSilent(testingDir) ;
- }
}
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/TestTDBFactory.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/TestTDBFactory.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/TestTDBFactory.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/TestTDBFactory.java Thu Sep 12 16:13:07 2013
@@ -28,13 +28,12 @@ import com.hp.hpl.jena.sparql.core.Datas
import com.hp.hpl.jena.sparql.core.Quad ;
import com.hp.hpl.jena.sparql.sse.SSE ;
import com.hp.hpl.jena.tdb.base.file.Location ;
-import com.hp.hpl.jena.tdb.sys.SystemTDB ;
import com.hp.hpl.jena.tdb.sys.TDBMaker ;
import com.hp.hpl.jena.tdb.transaction.DatasetGraphTransaction ;
public class TestTDBFactory extends BaseTest
{
- final String DIR = SystemTDB.isWindows ? ConfigTest.getTestingDirUnique() : ConfigTest.getTestingDirDB() ;
+ String DIR = ConfigTest.getCleanDir() ;
static Quad quad1 = SSE.parseQuad("(_ <s> <p> 1)") ;
static Quad quad2 = SSE.parseQuad("(_ <s> <p> 1)") ;
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/graph/TestPrefixMappingTDB.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/graph/TestPrefixMappingTDB.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/graph/TestPrefixMappingTDB.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/graph/TestPrefixMappingTDB.java Thu Sep 12 16:13:07 2013
@@ -120,8 +120,7 @@ public class TestPrefixMappingTDB extend
//TDB.getContext().set(SystemTDB.symFileMode, "mapped") ;
TDB.getContext().set(SystemTDB.symFileMode, "direct") ;
}
- String DB = ConfigTest.getTestingDirDB() ;
- FileOps.clearDirectory(DB) ;
+ String DB = ConfigTest.getCleanDir() ;
{
// Create new DB (assuming it's empty now)
Graph graph = TDBFactory.createDatasetGraph(DB).getDefaultGraph() ;
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/AbstractStoreConnections.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/AbstractStoreConnections.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/AbstractStoreConnections.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/AbstractStoreConnections.java Thu Sep 12 16:13:07 2013
@@ -18,11 +18,8 @@
package com.hp.hpl.jena.tdb.store;
-import java.io.File ;
-
import org.apache.jena.atlas.iterator.Iter ;
import org.apache.jena.atlas.junit.BaseTest ;
-import org.apache.jena.atlas.lib.FileOps ;
import org.junit.After ;
import org.junit.Before ;
import org.junit.Test ;
@@ -38,7 +35,6 @@ import com.hp.hpl.jena.tdb.StoreConnecti
import com.hp.hpl.jena.tdb.TDB ;
import com.hp.hpl.jena.tdb.TDBFactory ;
import com.hp.hpl.jena.tdb.base.file.Location ;
-import com.hp.hpl.jena.tdb.sys.SystemTDB ;
import com.hp.hpl.jena.tdb.transaction.DatasetGraphTxn ;
import com.hp.hpl.jena.tdb.transaction.TDBTransactionException ;
@@ -46,8 +42,6 @@ public abstract class AbstractStoreConne
{
// Subclass to give direct and mapped versions.
- static boolean nonDeleteableMMapFiles = SystemTDB.isWindows ;
-
// Per-test unique-ish.
static int count = 0 ;
long x = System.currentTimeMillis()+(count++) ;
@@ -63,13 +57,7 @@ public abstract class AbstractStoreConne
@Before public void before()
{
StoreConnection.reset() ;
- DIR = nonDeleteableMMapFiles ? ConfigTest.getTestingDirUnique() : ConfigTest.getTestingDirDB() ;
- FileOps.ensureDir(DIR) ;
- FileOps.clearDirectory(DIR) ;
-
- File d = new File(DIR) ;
- if ( d.list().length > 2 ) // . and ..
- throw new RuntimeException("Unable to clean up existing test directory contents") ;
+ DIR = ConfigTest.getCleanDir() ;
}
@After public void after() {}
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestDatasetTDBPersist.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestDatasetTDBPersist.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestDatasetTDBPersist.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestDatasetTDBPersist.java Thu Sep 12 16:13:07 2013
@@ -18,13 +18,11 @@
package com.hp.hpl.jena.tdb.store;
-
import java.util.Arrays ;
import java.util.List ;
import org.apache.jena.atlas.iterator.Iter ;
import org.apache.jena.atlas.junit.BaseTest ;
-import org.apache.jena.atlas.lib.FileOps ;
import org.junit.After ;
import org.junit.AfterClass ;
import org.junit.Before ;
@@ -40,7 +38,6 @@ import com.hp.hpl.jena.tdb.ConfigTest ;
import com.hp.hpl.jena.tdb.StoreConnection ;
import com.hp.hpl.jena.tdb.base.file.Location ;
import com.hp.hpl.jena.tdb.junit.GraphLocation ;
-import com.hp.hpl.jena.tdb.sys.SystemTDB ;
/** Testing persistence */
public class TestDatasetTDBPersist extends BaseTest
@@ -48,7 +45,6 @@ public class TestDatasetTDBPersist exten
static Node n0 = NodeFactoryExtra.parseNode("<http://example/n0>") ;
static Node n1 = NodeFactoryExtra.parseNode("<http://example/n1>") ;
static Node n2 = NodeFactoryExtra.parseNode("<http://example/n2>") ;
- static boolean nonDeleteableMMapFiles = SystemTDB.isWindows ;
// To avoid the problems on MS Windows whereby memory mapped files
// can't be deleted from a running JVM, we use a different, cleaned
@@ -58,10 +54,8 @@ public class TestDatasetTDBPersist exten
@Before public void before()
{
- String dirname = nonDeleteableMMapFiles ? ConfigTest.getTestingDirUnique() : ConfigTest.getTestingDir() ;
+ String dirname = ConfigTest.getCleanDir() ;
StoreConnection.reset() ;
- FileOps.ensureDir(dirname) ;
- FileOps.clearDirectory(dirname) ;
graphLocation = new GraphLocation(new Location(dirname)) ;
graphLocation.createDataset() ;
}
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestGraphTDB.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestGraphTDB.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestGraphTDB.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/store/TestGraphTDB.java Thu Sep 12 16:13:07 2013
@@ -39,7 +39,7 @@ public class TestGraphTDB extends Abstra
@BeforeClass public static void beforeClass()
{
StoreConnection.reset() ;
- graphLocation = new GraphLocation(new Location(ConfigTest.getTestingDirDB())) ;
+ graphLocation = new GraphLocation(new Location(ConfigTest.getCleanDir())) ;
graphLocation.release() ;
graphLocation.clearDirectory() ;
graphLocation.createGraph() ;
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/AbstractTestTransSequentialDisk.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/AbstractTestTransSequentialDisk.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/AbstractTestTransSequentialDisk.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/AbstractTestTransSequentialDisk.java Thu Sep 12 16:13:07 2013
@@ -20,20 +20,16 @@ package com.hp.hpl.jena.tdb.transaction;
import java.io.File ;
-import org.apache.jena.atlas.lib.FileOps ;
import org.junit.After ;
import org.junit.Before ;
import com.hp.hpl.jena.tdb.ConfigTest ;
import com.hp.hpl.jena.tdb.StoreConnection ;
-import com.hp.hpl.jena.tdb.sys.SystemTDB ;
/** Basic tests and tests of ordering (single thread) */
public abstract class AbstractTestTransSequentialDisk extends AbstractTestTransSeq
{
- static boolean nonDeleteableMMapFiles = SystemTDB.isWindows ;
-
- String DIR = null ;
+ protected String DIR = null ;
// Subclasses must implement.
// @BeforeClass public static void beforeClass() {}
@@ -42,13 +38,8 @@ public abstract class AbstractTestTransS
@Before public void before()
{
StoreConnection.reset() ;
- DIR = nonDeleteableMMapFiles ? ConfigTest.getTestingDirUnique() : ConfigTest.getTestingDir() ;
- FileOps.ensureDir(DIR) ;
- FileOps.clearDirectory(DIR) ;
-
+ DIR = ConfigTest.getCleanDir() ;
File d = new File(DIR) ;
- if ( d.list().length > 2 ) // . and ..
- throw new RuntimeException("not empty") ;
}
@After public void after() {}
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestNodeTableTransDisk.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestNodeTableTransDisk.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestNodeTableTransDisk.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestNodeTableTransDisk.java Thu Sep 12 16:13:07 2013
@@ -18,7 +18,6 @@
package com.hp.hpl.jena.tdb.transaction;
-import org.apache.jena.atlas.lib.FileOps ;
import org.junit.Before ;
import com.hp.hpl.jena.tdb.ConfigTest ;
@@ -26,19 +25,16 @@ import com.hp.hpl.jena.tdb.base.file.Fil
import com.hp.hpl.jena.tdb.base.file.Location ;
import com.hp.hpl.jena.tdb.base.objectfile.ObjectFile ;
import com.hp.hpl.jena.tdb.sys.SetupTDB ;
-import com.hp.hpl.jena.tdb.sys.SystemTDB ;
public class TestNodeTableTransDisk extends AbstractTestNodeTableTrans
{
Location loc = null ;
- static boolean nonDeleteableMMapFiles = SystemTDB.isWindows ;
static int count = 0 ;
@Before public void before()
{
- String dir = nonDeleteableMMapFiles ? ConfigTest.getTestingDirUnique() : ConfigTest.getTestingDirDB() ;
+ String dir = ConfigTest.getCleanDir() ;
loc = new Location(dir) ;
- FileOps.clearDirectory(loc.getDirectoryPath()) ;
}
@Override
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransRestart.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransRestart.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransRestart.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransRestart.java Thu Sep 12 16:13:07 2013
@@ -18,7 +18,6 @@
package com.hp.hpl.jena.tdb.transaction ;
-import java.io.File ;
import java.nio.ByteBuffer ;
import java.util.Iterator ;
@@ -34,7 +33,6 @@ import com.hp.hpl.jena.sparql.core.Quad
import com.hp.hpl.jena.sparql.sse.SSE ;
import com.hp.hpl.jena.tdb.ConfigTest ;
import com.hp.hpl.jena.tdb.StoreConnection ;
-import com.hp.hpl.jena.tdb.TDB ;
import com.hp.hpl.jena.tdb.base.block.FileMode ;
import com.hp.hpl.jena.tdb.base.file.FileFactory ;
import com.hp.hpl.jena.tdb.base.file.Location ;
@@ -52,17 +50,16 @@ public class TestTransRestart extends Ba
SystemTDB.setFileMode(FileMode.direct) ;
}
-// private final String path = ( SystemTDB.isWindows ? ConfigTest.getTestingDirUnique() : ConfigTest.getTestingDirDB() ) ;
- private final String path = ( SystemTDB.isWindows ? ConfigTest.getTestingDirUnique() : "/tmp/TDB" ) ;
- private Location location = new Location (path) ;
-
+ private String path = null ;
+ private Location location = null ;
+
private static boolean useTransactionsSetup = true ;
private static Quad quad1 = SSE.parseQuad("(_ <foo:bar> rdfs:label 'foo')") ;
private static Quad quad2 = SSE.parseQuad("(_ <foo:bar> rdfs:label 'bar')") ;
@Before public void setup() {
- cleanup() ;
- FileOps.ensureDir(path) ;
+ path = ConfigTest.getCleanDir() ;
+ location = new Location (path) ;
if ( useTransactionsSetup )
setupTxn() ;
else
@@ -86,24 +83,22 @@ public class TestTransRestart extends Ba
}
private void setupTxn() {
- StoreConnection sc = StoreConnection.make(location) ;
- DatasetGraphTxn dsg = sc.begin(ReadWrite.WRITE) ;
+ StoreConnection.release(location) ;
+ FileOps.clearDirectory(path);
+ StoreConnection sc = StoreConnection.make(location) ;
+ DatasetGraphTxn dsg = sc.begin(ReadWrite.WRITE);
dsg.add(quad1) ;
- dsg.commit() ;
- TDB.sync(dsg) ;
- dsg.end() ;
- StoreConnection.release(location) ;
+ dsg.commit() ;
+ dsg.end() ;
+ sc.flush();
+ StoreConnection.release(location) ;
}
private void cleanup() {
- File dir = new File(path) ;
- if ( dir.exists() ) {
+ if ( FileOps.exists(path)) {
FileOps.clearDirectory(path) ;
FileOps.deleteSilent(path) ;
}
- if ( ! SystemTDB.isWindows )
- // Windows, any mode, does not remove directories, at least not instantly.
- assertFalse ( dir.exists() ) ;
}
@Test
Modified: jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransactionTDB.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransactionTDB.java?rev=1522648&r1=1522647&r2=1522648&view=diff
==============================================================================
--- jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransactionTDB.java (original)
+++ jena/trunk/jena-tdb/src/test/java/com/hp/hpl/jena/tdb/transaction/TestTransactionTDB.java Thu Sep 12 16:13:07 2013
@@ -44,8 +44,7 @@ public class TestTransactionTDB extends
@Before public void before()
{
- DIR = nonDeleteableMMapFiles ? ConfigTest.getTestingDirUnique() : ConfigTest.getTestingDirDB() ;
- FileOps.clearDirectory(DIR) ;
+ DIR = ConfigTest.getCleanDir() ;
StoreConnection.release(new Location(DIR)) ;
}