Browse Source

Use SystemReader in JSchConfigSessionFactoryTest

This isolates the test from the concrete system it's running on.
SshSessionFactory reads the user also through SystemReader.

Change-Id: I1c796aa1c498fe3967456d8589e6be0a82ab8f44
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
stable-5.3
Matthias Sohn 6 years ago
parent
commit
d44225d85c
  1. 12
      org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/JschConfigSessionFactoryTest.java

12
org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/JschConfigSessionFactoryTest.java

@ -49,8 +49,11 @@ import java.nio.file.Files;
import java.util.Arrays;
import java.util.concurrent.TimeUnit;
import org.eclipse.jgit.junit.MockSystemReader;
import org.eclipse.jgit.util.FS;
import org.eclipse.jgit.util.SystemReader;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import com.jcraft.jsch.Session;
@ -67,8 +70,14 @@ public class JschConfigSessionFactoryTest {
DefaultSshSessionFactory factory = new DefaultSshSessionFactory();
@Before
public void setup() {
SystemReader.setInstance(new MockSystemReader());
}
@After
public void removeTmpConfig() {
SystemReader.setInstance(null);
if (tmpConfigFile == null) {
return;
}
@ -87,7 +96,8 @@ public class JschConfigSessionFactoryTest {
Session session = createSession("ssh://egit/egit/egit");
assertEquals("egit", session.getHost());
// No user in URI, none in ssh config: default is OS user name
assertEquals(System.getProperty("user.name"), session.getUserName());
assertEquals(SystemReader.getInstance().getProperty("user.name"),
session.getUserName());
assertEquals(22, session.getPort());
}

Loading…
Cancel
Save