Author: bfoster
Date: Wed Jun 15 16:52:50 2011
New Revision: 1136120

URL: http://svn.apache.org/viewvc?rev=1136120&view=rev
Log:

- unit-test updates 

---------------
OODT-194

Modified:
    
oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/JschSftpProtocol.java
    
oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/auth/HostKeyAuthentication.java
    
oodt/branches/protocol/protocol-sftp/src/test/org/apache/oodt/cas/protocol/sftp/TestJschSftpProtocol.java

Modified: 
oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/JschSftpProtocol.java
URL: 
http://svn.apache.org/viewvc/oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/JschSftpProtocol.java?rev=1136120&r1=1136119&r2=1136120&view=diff
==============================================================================
--- 
oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/JschSftpProtocol.java
 (original)
+++ 
oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/JschSftpProtocol.java
 Wed Jun 15 16:52:50 2011
@@ -93,13 +93,15 @@ public class JschSftpProtocol implements
       session = jsch.getSession(auth.getUser(), host, this.port);
       session.setUserInfo(new UserInfo() {
                                public String getPassphrase() {
-                                       return "";
+                                       return (auth instanceof 
HostKeyAuthentication) ? ((HostKeyAuthentication) auth)
+                                                       .getPassphrase() : null;
                                }
                                public String getPassword() {
                                        return auth.getPass();
                                }
                                public boolean promptPassphrase(String arg0) {
-                                       return false;
+                                       return (auth instanceof 
HostKeyAuthentication && ((HostKeyAuthentication) auth)
+                                                       .getPassphrase() != 
null);
                                }
                                public boolean promptPassword(String arg0) {
                                        return true;

Modified: 
oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/auth/HostKeyAuthentication.java
URL: 
http://svn.apache.org/viewvc/oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/auth/HostKeyAuthentication.java?rev=1136120&r1=1136119&r2=1136120&view=diff
==============================================================================
--- 
oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/auth/HostKeyAuthentication.java
 (original)
+++ 
oodt/branches/protocol/protocol-sftp/src/main/java/org/apache/oodt/cas/protocol/sftp/auth/HostKeyAuthentication.java
 Wed Jun 15 16:52:50 2011
@@ -27,13 +27,23 @@ import org.apache.oodt.cas.protocol.auth
 public class HostKeyAuthentication extends BasicAuthentication {
 
        private String hostKeyFile;
+       private String passphrase;
        
        public HostKeyAuthentication(String user, String pass, String 
hostKeyFile) {
+               this(user, pass, hostKeyFile, null);
+       }
+       
+       public HostKeyAuthentication(String user, String pass, String 
hostKeyFile, String passphrase) {
                super(user, pass);
                this.hostKeyFile = hostKeyFile;
+               this.passphrase = passphrase;
        }
 
        public String getHostKeyFile() {
                return hostKeyFile;
        }
+       
+       public String getPassphrase() {
+               return passphrase;
+       }
 }

Modified: 
oodt/branches/protocol/protocol-sftp/src/test/org/apache/oodt/cas/protocol/sftp/TestJschSftpProtocol.java
URL: 
http://svn.apache.org/viewvc/oodt/branches/protocol/protocol-sftp/src/test/org/apache/oodt/cas/protocol/sftp/TestJschSftpProtocol.java?rev=1136120&r1=1136119&r2=1136120&view=diff
==============================================================================
--- 
oodt/branches/protocol/protocol-sftp/src/test/org/apache/oodt/cas/protocol/sftp/TestJschSftpProtocol.java
 (original)
+++ 
oodt/branches/protocol/protocol-sftp/src/test/org/apache/oodt/cas/protocol/sftp/TestJschSftpProtocol.java
 Wed Jun 15 16:52:50 2011
@@ -24,6 +24,7 @@ import java.util.List;
 import java.util.concurrent.Executors;
 
 //OODT imports
+import org.apache.commons.io.FileUtils;
 import org.apache.oodt.cas.protocol.ProtocolFile;
 import org.apache.oodt.cas.protocol.exceptions.ProtocolException;
 import org.apache.oodt.cas.protocol.sftp.auth.HostKeyAuthentication;
@@ -45,6 +46,8 @@ import junit.framework.TestCase;
  */
 public class TestJschSftpProtocol extends TestCase {
 
+       private static final int PORT = 2022;
+       
        @Override
        public void setUp() {
     XmlServerConfigurationContext context = new 
XmlServerConfigurationContext();
@@ -80,7 +83,7 @@ public class TestJschSftpProtocol extend
        }
        
        public void testCDandPWDandLS() throws IOException, ProtocolException {
-               JschSftpProtocol sftpProtocol = new JschSftpProtocol(2022);
+               JschSftpProtocol sftpProtocol = new JschSftpProtocol(PORT);
                sftpProtocol.connect("localhost", new 
HostKeyAuthentication("bfoster", "",
                                new 
File("src/testdata/sample-dsa.pub").getAbsoluteFile().getAbsolutePath()));
                ProtocolFile homeDir = sftpProtocol.pwd();
@@ -97,4 +100,18 @@ public class TestJschSftpProtocol extend
                assertEquals(new ProtocolFile(testDir, "sshTestFile", false), 
testFile);
        }
        
+       public void testGET() throws ProtocolException, IOException {
+               JschSftpProtocol sftpProtocol = new JschSftpProtocol(PORT);
+               sftpProtocol.connect("localhost", new 
HostKeyAuthentication("bfoster", "",
+                               new 
File("src/testdata/sample-dsa.pub").getAbsoluteFile().getAbsolutePath()));
+               File bogusFile = File.createTempFile("bogus", "bogus");
+               File tmpFile = new File(bogusFile.getParentFile(), 
"TestJschSftpProtocol");
+               bogusFile.delete();
+               tmpFile.mkdirs();
+               sftpProtocol.cd(new ProtocolFile("sshTestDir", true));
+               File testDownloadFile = new File(tmpFile, "testDownloadFile");
+               sftpProtocol.get(new ProtocolFile("sshTestFile", false), 
testDownloadFile);
+               assertTrue(FileUtils.contentEquals(new 
File("src/testdata/sshTestDir/sshTestFile"), testDownloadFile));
+               FileUtils.forceDelete(tmpFile);
+       }
 }


Reply via email to