Author: evenisse Date: Wed May 17 00:53:27 2006 New Revision: 407193 URL: http://svn.apache.org/viewcvs?rev=407193&view=rev Log: [SCM-202] Fix tests if VSS plugin is configured
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/VssCommandLineUtils.java maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommand.java maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/test/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommandTest.java Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/VssCommandLineUtils.java URL: http://svn.apache.org/viewcvs/maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/VssCommandLineUtils.java?rev=407193&r1=407192&r2=407193&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/VssCommandLineUtils.java (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/VssCommandLineUtils.java Wed May 17 00:53:27 2006 @@ -19,13 +19,19 @@ import org.apache.maven.scm.ScmException; import org.apache.maven.scm.log.ScmLogger; import org.apache.maven.scm.provider.vss.repository.VssScmProviderRepository; +import org.apache.maven.scm.providers.vss.settings.Settings; +import org.apache.maven.scm.providers.vss.settings.io.xpp3.VssXpp3Reader; import org.codehaus.plexus.util.StringUtils; import org.codehaus.plexus.util.cli.CommandLineException; import org.codehaus.plexus.util.cli.CommandLineUtils; import org.codehaus.plexus.util.cli.Commandline; import org.codehaus.plexus.util.cli.StreamConsumer; +import org.codehaus.plexus.util.xml.pull.XmlPullParserException; import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.IOException; public class VssCommandLineUtils implements VssConstants @@ -79,4 +85,49 @@ } } + + public static final Settings getSettings() + { + Settings settings = null; + File scmUserHome = new File( System.getProperty( "user.home" ), ".scm" ); + File settingsFile = new File( scmUserHome, "vss-settings.xml" ); + if ( settingsFile.exists() ) + { + VssXpp3Reader reader = new VssXpp3Reader(); + try + { + settings = reader.read( new FileReader( settingsFile ) ); + } + catch ( FileNotFoundException e ) + { + } + catch ( IOException e ) + { + } + catch ( XmlPullParserException e ) + { + String message = settingsFile.getAbsolutePath() + " isn't well formed. SKIPPED." + e.getMessage(); + + System.out.println( message ); + } + } + return settings; + } + + public static final String getSsDir() + { + String ssDir = ""; + if ( VssCommandLineUtils.getSettings() != null ) + { + ssDir = VssCommandLineUtils.getSettings().getVssDirectory(); + + ssDir = StringUtils.replace( ssDir, "\\", "/" ); + + if ( !ssDir.endsWith( "/" ) ) + { + ssDir += "/"; + } + } + return ssDir; + } } Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommand.java URL: http://svn.apache.org/viewcvs/maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommand.java?rev=407193&r1=407192&r2=407193&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommand.java (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommand.java Wed May 17 00:53:27 2006 @@ -25,17 +25,9 @@ import org.apache.maven.scm.provider.vss.commands.VssCommandLineUtils; import org.apache.maven.scm.provider.vss.commands.VssConstants; import org.apache.maven.scm.provider.vss.repository.VssScmProviderRepository; -import org.apache.maven.scm.providers.vss.settings.Settings; -import org.apache.maven.scm.providers.vss.settings.io.xpp3.VssXpp3Reader; -import org.codehaus.plexus.util.StringUtils; import org.codehaus.plexus.util.cli.CommandLineUtils; import org.codehaus.plexus.util.cli.Commandline; -import org.codehaus.plexus.util.xml.pull.XmlPullParserException; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileReader; -import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; @@ -43,34 +35,6 @@ public class VssHistoryCommand extends AbstractChangeLogCommand { - private static Settings settings; - - static - { - File scmUserHome = new File( System.getProperty( "user.home" ), ".scm" ); - File settingsFile = new File( scmUserHome, "vss-settings.xml" ); - if ( settingsFile.exists() ) - { - VssXpp3Reader reader = new VssXpp3Reader(); - try - { - settings = reader.read( new FileReader( settingsFile ) ); - } - catch ( FileNotFoundException e ) - { - } - catch ( IOException e ) - { - } - catch ( XmlPullParserException e ) - { - String message = settingsFile.getAbsolutePath() + " isn't well formed. SKIPPED." + e.getMessage(); - - System.out.println( message ); - } - } - } - protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repository, ScmFileSet fileSet, Date startDate, Date endDate, String branch, String datePattern ) @@ -116,19 +80,8 @@ command.addEnvironment( "SSDIR", repo.getVssdir() ); - String ssDir = ""; - - if ( settings != null ) - { - ssDir = settings.getVssDirectory(); + String ssDir = VssCommandLineUtils.getSsDir(); - ssDir = StringUtils.replace( ssDir, "\\", "/" ); - - if ( !ssDir.endsWith( "/" ) ) - { - ssDir += "/"; - } - } command.setExecutable( ssDir + VssConstants.SS_EXE ); command.createArgument().setValue( VssConstants.COMMAND_HISTORY ); Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/test/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommandTest.java URL: http://svn.apache.org/viewcvs/maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/test/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommandTest.java?rev=407193&r1=407192&r2=407193&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/test/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommandTest.java (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/test/java/org/apache/maven/scm/provider/vss/commands/changelog/VssHistoryCommandTest.java Wed May 17 00:53:27 2006 @@ -19,10 +19,12 @@ import org.apache.maven.scm.ScmFileSet; import org.apache.maven.scm.ScmTestCase; import org.apache.maven.scm.manager.ScmManager; +import org.apache.maven.scm.provider.vss.commands.VssCommandLineUtils; import org.apache.maven.scm.provider.vss.repository.VssScmProviderRepository; import org.apache.maven.scm.repository.ScmRepository; import org.codehaus.plexus.util.cli.Commandline; +import java.io.File; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; @@ -59,6 +61,8 @@ String start = sdf.format( startDate ); String end = sdf.format( endDate ); - assertEquals( "ss History $D:\\myProject -Yusername,password -R -I- -Vd" + start + "~" + end, cl.toString() ); + String ssPath = VssCommandLineUtils.getSsDir().replace( '/', File.separatorChar ); + assertEquals( ssPath + "ss History $D:\\myProject -Yusername,password -R -I- -Vd" + start + "~" + end, + cl.toString() ); } }