I stay away from File.getCanonicalPath() as it has burned me too many
times in the past.
I've seen different implementations of this method to include full
absolute path on some JVMs, and other times only the path that you
passed in.
- Joakim
Brett Porter wrote:
would "new File( path ).getCanonicalPath()" be more suitable?
On 11/10/2007, at 12:23 AM, [EMAIL PROTECTED] wrote:
Author: joakime
Date: Wed Oct 10 15:23:04 2007
New Revision: 583632
URL: http://svn.apache.org/viewvc?rev=583632&view=rev
Log:
[MRM-534] Test failure in RepositoryContentConsumerUtilTest
Fixed OS specific validation in mock object to be OS neutral.
Modified:
maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumerUtilTest.java
Modified:
maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumerUtilTest.java
URL:
http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumerUtilTest.java?rev=583632&r1=583631&r2=583632&view=diff
==============================================================================
---
maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumerUtilTest.java
(original)
+++
maven/archiva/trunk/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/scanner/RepositoryContentConsumerUtilTest.java
Wed Oct 10 15:23:04 2007
@@ -19,6 +19,7 @@
* under the License.
*/
+import org.apache.commons.lang.SystemUtils;
import
org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration;
import
org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer;
import
org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer;
@@ -27,6 +28,8 @@
import org.codehaus.plexus.PlexusTestCase;
import org.easymock.MockControl;
+import com.sun.corba.se.impl.encoding.OSFCodeSetRegistry;
+
import java.io.File;
import java.util.Collections;
import java.util.List;
@@ -121,13 +124,13 @@
ManagedRepositoryConfiguration repo = createRepository(
"id", "name", getTestFile( "target/test-repo" ) );
File testFile = getTestFile(
"target/test-repo/path/to/test-file.txt" );
-
+
knownConsumer.beginScan( repo );
knownConsumer.getExcludes();
knownControl.setReturnValue( Collections.EMPTY_LIST );
knownConsumer.getIncludes();
knownControl.setReturnValue( Collections.singletonList(
"**/*.txt" ) );
- knownConsumer.processFile( "path/to/test-file.txt" );
+ knownConsumer.processFile( _OS("path/to/test-file.txt") );
// knownConsumer.completeScan();
knownControl.replay();
@@ -154,7 +157,7 @@
knownControl.replay();
invalidConsumer.beginScan( repo );
- invalidConsumer.processFile( "path/to/test-file.xml" );
+ invalidConsumer.processFile( _OS("path/to/test-file.xml") );
invalidConsumer.getId();
invalidControl.setReturnValue( "invalid" );
// invalidConsumer.completeScan();
@@ -177,7 +180,7 @@
knownControl.replay();
invalidConsumer.beginScan( repo );
- invalidConsumer.processFile( "path/to/test-file.txt" );
+ invalidConsumer.processFile( _OS("path/to/test-file.txt") );
invalidConsumer.getId();
invalidControl.setReturnValue( "invalid" );
// invalidConsumer.completeScan();
@@ -187,5 +190,18 @@
knownControl.verify();
invalidControl.verify();
+ }
+
+ /**
+ * Create an OS specific version of the filepath.
+ * Provide path in unix "/" format.
+ */
+ private String _OS( String path )
+ {
+ if ( SystemUtils.IS_OS_WINDOWS )
+ {
+ return path.replace( '/', '\\' );
+ }
+ return path;
}
}
--
Brett Porter - [EMAIL PROTECTED]
Blog: http://www.devzuz.org/blogs/bporter/
--
- Joakim Erdfelt
[EMAIL PROTECTED]
Open Source Software (OSS) Developer