Browse Source

Merge "Fix junit tests under windows when the platform is explicitly changed" into stable-3.6

tags/v3.6.0.201412230720-r
Matthias Sohn 9 years ago
parent
commit
79201ac95e

+ 2
- 0
org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/MockSystemReader.java View File

@@ -184,6 +184,7 @@ public class MockSystemReader extends SystemReader {
setProperty("file.separator", "\\");
setProperty("path.separator", ";");
setProperty("line.separator", "\r\n");
setPlatformChecker();
}

/**
@@ -194,5 +195,6 @@ public class MockSystemReader extends SystemReader {
setProperty("file.separator", "/");
setProperty("path.separator", ":");
setProperty("line.separator", "\n");
setPlatformChecker();
}
}

+ 13
- 5
org.eclipse.jgit/src/org/eclipse/jgit/util/SystemReader.java View File

@@ -163,11 +163,19 @@ public abstract class SystemReader {
private void init() {
// Creating ObjectChecker must be deferred. Unit tests change
// behavior of is{Windows,MacOS} in constructor of subclass.
if (platformChecker == null) {
platformChecker = new ObjectChecker()
.setSafeForWindows(isWindows())
.setSafeForMacOS(isMacOS());
}
if (platformChecker == null)
setPlatformChecker();
}

/**
* Should be used in tests when the platform is explicitly changed.
*
* @since 3.6
*/
protected final void setPlatformChecker() {
platformChecker = new ObjectChecker()
.setSafeForWindows(isWindows())
.setSafeForMacOS(isMacOS());
}

/**

Loading…
Cancel
Save