diff options
Diffstat (limited to 'subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java')
-rw-r--r-- | subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java | 163 |
1 files changed, 125 insertions, 38 deletions
diff --git a/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java b/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java index dd79925..885c6c5 100644 --- a/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java +++ b/subversion/bindings/javahl/tests/org/apache/subversion/javahl/SVNTests.java @@ -173,7 +173,18 @@ class SVNTests extends TestCase private void init() { - // if not already set, get a usefull value for rootDir + String disableCredStore = System.getProperty("test.disablecredstore"); + if (disableCredStore != null) + { + try { + SVNUtil.disableNativeCredentialsStore(); + } catch(Throwable ex) { + System.err.println("*** ERROR: Could not disable" + + " the native credentials store"); + } + } + + // if not already set, get a useful value for rootDir if (rootDirectoryName == null) rootDirectoryName = System.getProperty("test.rootdir"); if (rootDirectoryName == null) @@ -246,10 +257,11 @@ class SVNTests extends TestCase greekRepos = new File(localTmp, "repos"); greekDump = new File(localTmp, "greek_dump"); admin.create(greekRepos, true,false, null, this.fsType); - addExpectedCommitItem(greekFiles.getAbsolutePath(), null, null, - NodeKind.none, CommitItemStateFlags.Add); + addExpectedCommitItem(greekFiles.getAbsolutePath(), + makeReposUrl(greekRepos).toString(), null, + NodeKind.dir, CommitItemStateFlags.Add); client.doImport(greekFiles.getAbsolutePath(), - makeReposUrl(greekRepos).toString(), + makeReposUrl(greekRepos).toString(), Depth.infinity, false, false, null, new MyCommitMessage(), null); admin.dump(greekRepos, new FileOutputStream(greekDump), @@ -285,66 +297,140 @@ class SVNTests extends TestCase { this.client = new SVNClient(); this.client.notification2(new MyNotifier()); - this.client.setPrompt(new DefaultPromptUserPassword()); + if (DefaultAuthn.useDeprecated()) + this.client.setPrompt(DefaultAuthn.getDeprecated()); + else + this.client.setPrompt(DefaultAuthn.getDefault()); this.client.username(USERNAME); this.client.setProgressCallback(new DefaultProgressListener()); this.client.setConfigDirectory(this.conf.getAbsolutePath()); this.expectedCommitItems = new HashMap<String, MyCommitItem>(); } /** - * the default prompt : never prompts the user, provides defaults answers + * the default prompts : never prompt the user, provide default answers */ - protected static class DefaultPromptUserPassword implements UserPasswordCallback + protected static class DefaultAuthn { - - public int askTrustSSLServer(String info, boolean allowPermanently) + public static boolean useDeprecated() { - return UserPasswordCallback.AcceptTemporary; + String prop = System.getProperty("test.authn.deprecated"); + return (prop != null && !prop.isEmpty()); } - public String askQuestion(String realm, String question, boolean showAnswer) + public static AuthnCallback getDefault() { - return ""; + return new DefaultAuthnCallback(); } - public boolean askYesNo(String realm, String question, boolean yesIsDefault) + @SuppressWarnings("deprecation") + public static UserPasswordCallback getDeprecated() { - return yesIsDefault; + return new DeprecatedAuthnCallback(); } - public String getPassword() + private static class DefaultAuthnCallback + implements AuthnCallback { - return PASSWORD; - } + public UsernameResult + usernamePrompt(String realm, boolean maySave) + { + return new UsernameResult(USERNAME); + } - public String getUsername() - { - return USERNAME; - } + public UserPasswordResult + userPasswordPrompt(String realm, String username, + boolean maySave) + { + return new UserPasswordResult(USERNAME, PASSWORD); + } - public boolean prompt(String realm, String username) - { - return false; - } + public SSLServerTrustResult + sslServerTrustPrompt(String realm, + SSLServerCertFailures failures, + SSLServerCertInfo info, + boolean maySave) + { + return SSLServerTrustResult.acceptTemporarily(); + } - public boolean prompt(String realm, String username, boolean maySave) - { - return false; - } + public SSLClientCertResult + sslClientCertPrompt(String realm, boolean maySave) + { + return null; + } - public String askQuestion(String realm, String question, - boolean showAnswer, boolean maySave) - { - return ""; + public SSLClientCertPassphraseResult + sslClientCertPassphrasePrompt(String realm, boolean maySave) + { + return null; + } + + public boolean allowStorePlaintextPassword(String realm) + { + return false; + } + + public boolean allowStorePlaintextPassphrase(String realm) + { + return false; + } } - public boolean userAllowedSave() + @SuppressWarnings("deprecation") + private static class DeprecatedAuthnCallback + implements UserPasswordCallback { - return false; + public int askTrustSSLServer(String info, boolean allowPermanently) + { + return UserPasswordCallback.AcceptTemporary; + } + + public String askQuestion(String realm, String question, + boolean showAnswer) + { + return ""; + } + + public boolean askYesNo(String realm, String question, + boolean yesIsDefault) + { + return yesIsDefault; + } + + public String getPassword() + { + return PASSWORD; + } + + public String getUsername() + { + return USERNAME; + } + + public boolean prompt(String realm, String username) + { + return true; + } + + public boolean prompt(String realm, String username, boolean maySave) + { + return true; + } + + public String askQuestion(String realm, String question, + boolean showAnswer, boolean maySave) + { + return ""; + } + + public boolean userAllowedSave() + { + return false; + } } } - private static class DefaultProgressListener implements ProgressCallback + protected static class DefaultProgressListener implements ProgressCallback { public void onProgress(ProgressEvent event) @@ -782,7 +868,8 @@ class SVNTests extends TestCase { MyStatusCallback statusCallback = new MyStatusCallback(); client.status(workingCopy.getAbsolutePath(), Depth.unknown, - checkRepos, true, true, false, null, statusCallback); + checkRepos, false, true, true, false, false, + null, statusCallback); wc.check(statusCallback.getStatusArray(), workingCopy.getAbsolutePath(), checkRepos); } @@ -916,7 +1003,7 @@ class SVNTests extends TestCase public Status[] getStatusArray() { - return (Status[]) statuses.toArray(new Status[statuses.size()]); + return statuses.toArray(new Status[statuses.size()]); } } } |