From b725e30dea9e936b6ad3e108f8ffa9e5201efeaa Mon Sep 17 00:00:00 2001 From: Benjamin Bentmann Date: Mon, 17 Aug 2009 17:30:33 +0000 Subject: [PATCH] [MNG-4305] [regression] ${localRepository.basedir} is not a proper path git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@805061 13f79535-47bb-0310-9956-ffa450edef68 --- .../repository/MavenArtifactRepository.java | 3 +++ .../maven/repository/MirrorProcessorTest.java | 3 ++- .../repository/LegacyRepositorySystemTest.java | 18 ++++++++++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/maven-compat/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java b/maven-compat/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java index 55595e52bb..fcff6a0855 100644 --- a/maven-compat/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java +++ b/maven-compat/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java @@ -267,6 +267,9 @@ else if ( index >= 0 ) { retValue = retValue.charAt( 0 ) + ":" + retValue.substring( 2 ); } + + // normalize separators + retValue = new File( retValue ).getPath(); } if ( retValue == null ) diff --git a/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java b/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java index f4995854cb..f4a73007ed 100644 --- a/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java +++ b/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java @@ -1,5 +1,6 @@ package org.apache.maven.repository; +import java.io.File; import java.util.Arrays; import java.util.List; @@ -186,7 +187,7 @@ public void testMirrorProperUrlAndProtocolAndBasedir() ArtifactRepository repo = repos.get( 0 ); assertEquals( "file:///tmp", repo.getUrl() ); assertEquals( "file", repo.getProtocol() ); - assertEquals( "/tmp", repo.getBasedir() ); + assertEquals( File.separator + "tmp", repo.getBasedir() ); } /** diff --git a/maven-core/src/test/java/org/apache/maven/repository/LegacyRepositorySystemTest.java b/maven-core/src/test/java/org/apache/maven/repository/LegacyRepositorySystemTest.java index 9690c6ccd3..500a70ceea 100644 --- a/maven-core/src/test/java/org/apache/maven/repository/LegacyRepositorySystemTest.java +++ b/maven-core/src/test/java/org/apache/maven/repository/LegacyRepositorySystemTest.java @@ -135,4 +135,22 @@ public void testThatASystemScopedDependencyIsNotResolvedFromRepositories() assertTrue( result.hasMissingArtifacts() ); } } + + public void testLocalRepositoryBasedir() + throws Exception + { + File localRepoDir = new File( "" ).getAbsoluteFile(); + + ArtifactRepository localRepo = repositorySystem.createLocalRepository( localRepoDir ); + + String basedir = localRepo.getBasedir(); + + assertFalse( basedir.endsWith( "/" ) ); + assertFalse( basedir.endsWith( "\\" ) ); + + assertEquals( localRepoDir, new File( basedir ) ); + + assertEquals( localRepoDir.getPath(), basedir ); + } + }