package jetbrains.mps.build.tests; /*Generated by MPS */ import junit.framework.TestCase; import java.io.File; import org.junit.Assert; import jetbrains.mps.build.util.RelativePathHelper; public class TestRelativePathHelper_Test extends TestCase { public void test_testRelPaths() throws Exception { File tmpFile = File.createTempFile("mpsTestRelPathHelper", "tmp"); tmpFile.delete(); tmpFile.mkdirs(); tmpFile.deleteOnExit(); File baseDir = new File(tmpFile, "build/scripts"); baseDir.mkdirs(); // 1 go up String scriptsFolder = baseDir.getCanonicalPath(); String targetFolder = new File(tmpFile, "build2").getCanonicalPath(); Assert.assertEquals("../../build2", new RelativePathHelper(scriptsFolder).makeRelative(targetFolder)); // back Assert.assertEquals(targetFolder.replace("\\", "/"), new RelativePathHelper(scriptsFolder).makeAbsolute("../../build2")); Assert.assertEquals(targetFolder.replace("\\", "/"), new RelativePathHelper(scriptsFolder).makeAbsolute("../../build2/")); // 2 same folder Assert.assertEquals("", new RelativePathHelper(scriptsFolder).makeRelative(scriptsFolder)); // back Assert.assertEquals(RelativePathHelper.normalizePath(scriptsFolder, true), new RelativePathHelper(scriptsFolder).makeAbsolute("")); // 3 one level up String oneUp = baseDir.getParentFile().getCanonicalPath(); Assert.assertEquals("../", new RelativePathHelper(scriptsFolder).makeRelative(oneUp)); // back Assert.assertEquals(oneUp.replace("\\", "/"), new RelativePathHelper(scriptsFolder).makeAbsolute("..")); Assert.assertEquals(oneUp.replace("\\", "/"), new RelativePathHelper(scriptsFolder).makeAbsolute("../")); } public TestRelativePathHelper_Test() { } }