/* * Copyright 2016 Nokia Solutions and Networks * Licensed under the Apache License, Version 2.0, * see license.txt file for details. */ package org.rf.ide.core.project; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assume.assumeFalse; import static org.junit.Assume.assumeTrue; import org.junit.Test; import org.rf.ide.core.executor.RedSystemProperties; public class ImportPathTest { @Test public void testRelativePaths_1() { assertThat(ImportPath.from("relative").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative/to/dir").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative/./to/dir").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative/../to/dir").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative/.././../to/dir").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative/to/file.ext").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative/./to/file.ext").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative/../to/file.ext").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative/.././../to/file.ext").isAbsolute()).isFalse(); } @Test public void testRelativePaths_2() { assertThat(ImportPath.from("relative").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative\\to\\dir").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative\\.\\to\\dir").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative\\..\\to\\dir").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative\\..\\.\\..\\to\\dir").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative\\to\\file.ext").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative\\.\\to\\file.ext").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative\\..\\to\\file.ext").isAbsolute()).isFalse(); assertThat(ImportPath.from("relative\\..\\.\\..\\to\\file.ext").isAbsolute()).isFalse(); } @Test public void testAbsolutePaths_unixPaths() { assumeFalse(RedSystemProperties.isWindowsPlatform()); assertThat(ImportPath.from("/absolute").isAbsolute()).isTrue(); assertThat(ImportPath.from("/absolute/to/dir").isAbsolute()).isTrue(); assertThat(ImportPath.from("/absolute/./to/dir").isAbsolute()).isTrue(); assertThat(ImportPath.from("/absolute/../to/dir").isAbsolute()).isTrue(); assertThat(ImportPath.from("/absolute/.././../to/dir").isAbsolute()).isTrue(); assertThat(ImportPath.from("/absolute/to/file.ext").isAbsolute()).isTrue(); assertThat(ImportPath.from("/absolute/./to/file.ext").isAbsolute()).isTrue(); assertThat(ImportPath.from("/absolute/../to/file.ext").isAbsolute()).isTrue(); assertThat(ImportPath.from("/absolute/.././../to/file.ext").isAbsolute()).isTrue(); } @Test public void testAbsolutePaths_windowsPaths() { assumeTrue(RedSystemProperties.isWindowsPlatform()); assertThat(ImportPath.from("c:\\absolute").isAbsolute()).isTrue(); assertThat(ImportPath.from("c:\\absolute\\to\\dir").isAbsolute()).isTrue(); assertThat(ImportPath.from("c:\\absolute\\.\\to\\dir").isAbsolute()).isTrue(); assertThat(ImportPath.from("c:\\absolute\\..\\to\\dir").isAbsolute()).isTrue(); assertThat(ImportPath.from("c:\\absolute\\..\\.\\..\\to\\dir").isAbsolute()).isTrue(); assertThat(ImportPath.from("c:\\absolute\\to\\file.ext").isAbsolute()).isTrue(); assertThat(ImportPath.from("c:\\absolute\\.\\to\\file.ext").isAbsolute()).isTrue(); assertThat(ImportPath.from("c:\\absolute\\..\\to\\file.ext").isAbsolute()).isTrue(); assertThat(ImportPath.from("c:\\absolute\\..\\.\\..\\to\\file.ext").isAbsolute()).isTrue(); } }