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() {
}
}