You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2014/11/26 20:47:57 UTC
svn commit: r1641903 - in /lucene/dev/branches/branch_5x: ./ lucene/
lucene/core/ lucene/core/src/test/org/apache/lucene/index/
lucene/test-framework/
lucene/test-framework/src/java/org/apache/lucene/mockfile/
lucene/test-framework/src/java/org/apache/...
Author: mikemccand
Date: Wed Nov 26 19:47:56 2014
New Revision: 1641903
URL: http://svn.apache.org/r1641903
Log:
LUCENE-6078: disable this test if get WindowsFS
Modified:
lucene/dev/branches/branch_5x/ (props changed)
lucene/dev/branches/branch_5x/lucene/ (props changed)
lucene/dev/branches/branch_5x/lucene/core/ (props changed)
lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
lucene/dev/branches/branch_5x/lucene/test-framework/ (props changed)
lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/mockfile/FilterFileSystem.java
lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/util/TestUtil.java
Modified: lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java?rev=1641903&r1=1641902&r2=1641903&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java (original)
+++ lucene/dev/branches/branch_5x/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java Wed Nov 26 19:47:56 2014
@@ -2542,6 +2542,10 @@ public class TestIndexWriter extends Luc
assumeFalse("this test can't run on Windows", Constants.WINDOWS);
MockDirectoryWrapper dir = newMockDirectory();
+ if (TestUtil.isWindowsFS(dir)) {
+ dir.close();
+ assumeFalse("this test can't run on Windows", true);
+ }
// don't act like windows either, or the test won't simulate the condition
dir.setEnableVirusScanner(false);
Modified: lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/mockfile/FilterFileSystem.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/mockfile/FilterFileSystem.java?rev=1641903&r1=1641902&r2=1641903&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/mockfile/FilterFileSystem.java (original)
+++ lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/mockfile/FilterFileSystem.java Wed Nov 26 19:47:56 2014
@@ -181,4 +181,14 @@ public class FilterFileSystem extends Fi
public WatchService newWatchService() throws IOException {
return delegate.newWatchService();
}
+
+ /** Returns the {@code FileSystem} we wrap. */
+ public FileSystem getDelegate() {
+ return delegate;
+ }
+
+ /** Returns the {@code FilterFileSystemProvider} sent to this on init. */
+ public FileSystemProvider getParent() {
+ return parent;
+ }
}
Modified: lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/util/TestUtil.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/util/TestUtil.java?rev=1641903&r1=1641902&r2=1641903&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/util/TestUtil.java (original)
+++ lucene/dev/branches/branch_5x/lucene/test-framework/src/java/org/apache/lucene/util/TestUtil.java Wed Nov 26 19:47:56 2014
@@ -25,6 +25,7 @@ import java.io.PrintStream;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.nio.CharBuffer;
+import java.nio.file.FileSystem;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Arrays;
@@ -81,12 +82,16 @@ import org.apache.lucene.index.SegmentRe
import org.apache.lucene.index.Terms;
import org.apache.lucene.index.TermsEnum;
import org.apache.lucene.index.TieredMergePolicy;
+import org.apache.lucene.mockfile.FilterFileSystem;
+import org.apache.lucene.mockfile.WindowsFS;
import org.apache.lucene.search.FieldDoc;
import org.apache.lucene.search.FilteredQuery.FilterStrategy;
import org.apache.lucene.search.FilteredQuery;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.search.TopDocs;
import org.apache.lucene.store.Directory;
+import org.apache.lucene.store.FSDirectory;
+import org.apache.lucene.store.FilterDirectory;
import org.apache.lucene.store.NoLockFactory;
import org.junit.Assert;
import com.carrotsearch.randomizedtesting.generators.RandomInts;
@@ -1142,6 +1147,35 @@ public final class TestUtil {
return sb.toString();
}
}
+
+ /** Returns true if this is an FSDirectory backed by {@link WindowsFS}. */
+ public static boolean isWindowsFS(Directory dir) {
+ // First unwrap directory to see if there is an FSDir:
+ while (true) {
+ if (dir instanceof FSDirectory) {
+ return isWindowsFS(((FSDirectory) dir).getDirectory());
+ } else if (dir instanceof FilterDirectory) {
+ dir = ((FilterDirectory) dir).getDelegate();
+ } else {
+ return false;
+ }
+ }
+ }
+
+ /** Returns true if this Path is backed by {@link WindowsFS}. */
+ public static boolean isWindowsFS(Path path) {
+ FileSystem fs = path.getFileSystem();
+ while (true) {
+ if (fs instanceof FilterFileSystem) {
+ if (((FilterFileSystem) fs).getParent() instanceof WindowsFS) {
+ return true;
+ }
+ fs = ((FilterFileSystem) fs).getDelegate();
+ } else {
+ return false;
+ }
+ }
+ }
/** List of characters that match {@link Character#isWhitespace} */
public static final char[] WHITESPACE_CHARACTERS = new char[] {