From 898ab4f970b2430d3bc1b7e147cf96cc57b5e3ff Mon Sep 17 00:00:00 2001 From: irengrig Date: Thu, 10 Jan 2013 01:27:48 +0400 Subject: [PATCH] fix svn command line (status parse) test for Linux/Mac --- .../idea/svn/SvnParseCommandLineParseTest.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/plugins/svn4idea/testSource/org/jetbrains/idea/svn/SvnParseCommandLineParseTest.java b/plugins/svn4idea/testSource/org/jetbrains/idea/svn/SvnParseCommandLineParseTest.java index 3af195443b4d..90f6d18ea143 100644 --- a/plugins/svn4idea/testSource/org/jetbrains/idea/svn/SvnParseCommandLineParseTest.java +++ b/plugins/svn4idea/testSource/org/jetbrains/idea/svn/SvnParseCommandLineParseTest.java @@ -15,6 +15,8 @@ */ package org.jetbrains.idea.svn; +import com.intellij.openapi.util.SystemInfo; +import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.CharsetToolkit; import com.intellij.util.Consumer; import com.intellij.util.containers.Convertor; @@ -554,6 +556,7 @@ public class SvnParseCommandLineParseTest extends TestCase { "\n"; final SvnStatusHandler[] handlerArr = new SvnStatusHandler[1]; + final String basePath = SystemInfo.isWindows ? "C:/base/" : "/base/"; final SvnStatusHandler handler = new SvnStatusHandler(new SvnStatusHandler.ExternalDataCallback() { @Override @@ -564,7 +567,7 @@ public class SvnParseCommandLineParseTest extends TestCase { @Override public void switchChangeList(String newList) { } - }, new File("C:/base/"), new Convertor() { + }, new File(basePath), new Convertor() { @Override public SVNInfo convert(File o) { try { @@ -578,7 +581,7 @@ public class SvnParseCommandLineParseTest extends TestCase { final int secondIdx = o.getPath().indexOf(":", idx + 1); Assert.assertTrue(o.getPath(), secondIdx == -1); try { - return createStubInfo("C:/base/1", "http://a.b.c"); + return createStubInfo(basePath + "1", "http://a.b.c"); } catch (SVNException e) { // @@ -588,11 +591,17 @@ public class SvnParseCommandLineParseTest extends TestCase { }); handlerArr[0] = handler; + final String osChecked = changePathsIfNix(s); SAXParser parser = SAXParserFactory.newInstance().newSAXParser(); - parser.parse(new ByteArrayInputStream(s.getBytes(CharsetToolkit.UTF8_CHARSET)), handler); + parser.parse(new ByteArrayInputStream(osChecked.getBytes(CharsetToolkit.UTF8_CHARSET)), handler); final MultiMap changes = handler.getCurrentListChanges(); } + private String changePathsIfNix(String s) { + s = StringUtil.replace(s, "\\", "/"); + return StringUtil.replace(s, "C:/", "/c/"); + } + private IdeaSVNInfo createStubInfo(final String basePath, final String baseUrl) throws SVNException { return new IdeaSVNInfo(basePath, SVNURL.parseURIEncoded(baseUrl), SVNRevision.HEAD, SVNNodeKind.FILE, "", SVNURL.parseURIEncoded("http://a.b.c"), 1, new Date(), "me", null, SVNDepth.EMPTY, 1);