Updated Branches:
  refs/heads/master 5d8d5c7c6 -> b41cf6dd2

[SCM-707] Maven SCM should encode username and password in URL
prepare tests


Project: http://git-wip-us.apache.org/repos/asf/maven-scm/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-scm/commit/498b6a54
Tree: http://git-wip-us.apache.org/repos/asf/maven-scm/tree/498b6a54
Diff: http://git-wip-us.apache.org/repos/asf/maven-scm/diff/498b6a54

Branch: refs/heads/master
Commit: 498b6a548043a14557792c62abde9564c16dfcfe
Parents: 5d8d5c7
Author: rfscholte <rfscho...@apache.org>
Authored: Fri Apr 5 23:01:32 2013 +0200
Committer: rfscholte <rfscho...@apache.org>
Committed: Fri Apr 5 23:01:32 2013 +0200

----------------------------------------------------------------------
 .../repository/GitScmProviderRepositoryTest.java   |   70 +++++++++++---
 1 files changed, 55 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven-scm/blob/498b6a54/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/test/java/org/apache/maven/scm/provider/git/repository/GitScmProviderRepositoryTest.java
----------------------------------------------------------------------
diff --git 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/test/java/org/apache/maven/scm/provider/git/repository/GitScmProviderRepositoryTest.java
 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/test/java/org/apache/maven/scm/provider/git/repository/GitScmProviderRepositoryTest.java
index 06ebdde..ab3e772 100644
--- 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/test/java/org/apache/maven/scm/provider/git/repository/GitScmProviderRepositoryTest.java
+++ 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/test/java/org/apache/maven/scm/provider/git/repository/GitScmProviderRepositoryTest.java
@@ -20,6 +20,7 @@ package org.apache.maven.scm.provider.git.repository;
  */
 
 import org.apache.maven.scm.ScmTestCase;
+import org.apache.maven.scm.manager.NoSuchScmProviderException;
 import org.apache.maven.scm.manager.ScmManager;
 import org.apache.maven.scm.repository.ScmRepository;
 import org.apache.maven.scm.repository.ScmRepositoryException;
@@ -231,7 +232,7 @@ public class GitScmProviderRepositoryTest
     {
         testIllegalUrl( "file:/tmp/git" );
     }
-
+    
     // ----------------------------------------------------------------------
     //
     // ----------------------------------------------------------------------
@@ -242,17 +243,41 @@ public class GitScmProviderRepositoryTest
                                              String expectedHost, int 
expectedPort, String expectedPath)
         throws Exception, ScmRepositoryException
     {
-        ScmRepository repository = scmManager.makeScmRepository( scmUrl );
 
-        assertNotNull( "ScmManager.makeScmRepository() returned null", 
repository );
+        ScmRepository repository = testScmRepository( scmUrl, 
expectedToString, expectedFetchUrl );
+        
+        GitScmProviderRepository providerRepository = 
(GitScmProviderRepository) repository.getProviderRepository();
 
-        assertNotNull( "The provider repository was null.", 
repository.getProviderRepository() );
+        return testScmProviderRepository( expectedToString, expectedFetchUrl, 
expectedPushUrl, expectedUser,
+                                          expectedPassword, expectedHost, 
expectedPort, providerRepository );
+        
+    }
 
-        assertTrue( "The SCM Repository isn't a " + 
GitScmProviderRepository.class.getName() + ".", repository
-            .getProviderRepository() instanceof GitScmProviderRepository );
+    private GitScmProviderRepository testUrl(String scmUrl, String username, 
String password, String expectedToString,
+                                             String expectedFetchUrl, String 
expectedPushUrl,
+                                             String expectedUser, String 
expectedPassword,
+                                             String expectedHost, int 
expectedPort, String expectedPath)
+        throws Exception, ScmRepositoryException
+    {
+        
+        ScmRepository repository = testScmRepository( scmUrl, 
expectedToString, expectedFetchUrl );
 
         GitScmProviderRepository providerRepository = 
(GitScmProviderRepository) repository.getProviderRepository();
 
+        providerRepository.setUser( username );
+        
+        providerRepository.setPassword( password );
+        
+        return testScmProviderRepository( expectedToString, expectedFetchUrl, 
expectedPushUrl, expectedUser,
+                                          expectedPassword, expectedHost, 
expectedPort, providerRepository );
+    }
+
+    private GitScmProviderRepository testScmProviderRepository( String 
expectedToString, String expectedFetchUrl,
+                                                                String 
expectedPushUrl, String expectedUser,
+                                                                String 
expectedPassword, String expectedHost,
+                                                                int 
expectedPort,
+                                                                
GitScmProviderRepository providerRepository )
+    {
         assertEquals( "fetch url is incorrect", expectedFetchUrl, 
providerRepository.getFetchUrl() );
         
         if ( expectedPushUrl != null )
@@ -260,15 +285,6 @@ public class GitScmProviderRepositoryTest
             assertEquals( "push url is incorrect", expectedPushUrl, 
providerRepository.getPushUrl() );
         }
 
-        if ( expectedToString != null )
-        {
-            assertEquals( "toString is incorrect", "git:" + expectedToString, 
repository.toString() );
-        }
-        else
-        {
-            assertEquals( "toString is incorrect", "git:" + expectedFetchUrl, 
repository.toString() );
-        }
-
         assertEquals( "User is incorrect", expectedUser, 
providerRepository.getUser() );
 
         assertEquals( "Password is incorrect", expectedPassword, 
providerRepository.getPassword() );
@@ -283,6 +299,30 @@ public class GitScmProviderRepositoryTest
         return providerRepository;
     }
 
+    private ScmRepository testScmRepository( String scmUrl, String 
expectedToString, String expectedFetchUrl )
+        throws ScmRepositoryException, NoSuchScmProviderException
+    {
+        ScmRepository repository = scmManager.makeScmRepository( scmUrl );
+
+        assertNotNull( "ScmManager.makeScmRepository() returned null", 
repository );
+
+        assertNotNull( "The provider repository was null.", 
repository.getProviderRepository() );
+
+        assertTrue( "The SCM Repository isn't a " + 
GitScmProviderRepository.class.getName() + ".", repository
+            .getProviderRepository() instanceof GitScmProviderRepository );
+        
+        if ( expectedToString != null )
+        {
+            assertEquals( "toString is incorrect", "git:" + expectedToString, 
repository.toString() );
+        }
+        else
+        {
+            assertEquals( "toString is incorrect", "git:" + expectedFetchUrl, 
repository.toString() );
+        }
+
+        return repository;
+    }
+    
     private void testIllegalUrl( String url )
         throws Exception
     {

Reply via email to