blob: bf3ec46b01e6075a6f50077bce325de7f0f90f25 [file] [log] [blame]
/*=============================================================================#
# Copyright (c) 2020, 2021 Stephan Wahlbrink and others.
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License 2.0 which is available at
# https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
# which is available at https://www.apache.org/licenses/LICENSE-2.0.
#
# SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
#
# Contributors:
# Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
#=============================================================================*/
package org.eclipse.statet.jcommons.runtime;
import static org.junit.jupiter.api.Assertions.assertEquals;
import java.net.URI;
import java.net.URISyntaxException;
import org.junit.jupiter.api.Test;
public class UriUtilsTest {
public UriUtilsTest() {
}
@Test
public void isFileUrl() throws URISyntaxException {
assertEquals(true, UriUtils.isFileUrl(new URI("file", "/test/file.jar", null)));
assertEquals(true, UriUtils.isFileUrl(new URI("FILE", "/test/file.jar", null)));
assertEquals(true, UriUtils.isFileUrl(new URI("File", "/test/file.jar", null)));
assertEquals(false, UriUtils.isFileUrl(new URI(null, "", null)));
assertEquals(false, UriUtils.isFileUrl(new URI(null, "file", null)));
assertEquals(false, UriUtils.isFileUrl(new URI(null, "file/test/file.jar!/", null)));
assertEquals(false, UriUtils.isFileUrl(new URI("filx", "/test/file.jar!/", null)));
assertEquals(false, UriUtils.isFileUrl(new URI("filesystem", "/test/file.jar", null)));
assertEquals(false, UriUtils.isFileUrl(new URI("jar", "/test/file.jar", null)));
}
@Test
public void isFileUrlString() {
assertEquals(true, UriUtils.isFileUrl("file:/test/file.jar"));
assertEquals(true, UriUtils.isFileUrl("FILE:/test/file.jar"));
assertEquals(true, UriUtils.isFileUrl("File:/test/file.jar"));
assertEquals(false, UriUtils.isFileUrl(""));
assertEquals(false, UriUtils.isFileUrl("file"));
assertEquals(false, UriUtils.isFileUrl("file/test/file.jar"));
assertEquals(false, UriUtils.isFileUrl("filÉ:/test/file.jar"));
assertEquals(false, UriUtils.isFileUrl("filesystem:/test/file.jar"));
assertEquals(false, UriUtils.isFileUrl("jar:/test/file.jar"));
}
@Test
public void isJarUrl() throws URISyntaxException {
assertEquals(true, UriUtils.isJarUrl(new URI("jar", "file:/test/file.jar!/", null)));
assertEquals(true, UriUtils.isJarUrl(new URI("JAR", "file:/test/file.jar!/", null)));
assertEquals(true, UriUtils.isJarUrl(new URI("Jar", "file:/test/file.jar!/", null)));
assertEquals(false, UriUtils.isJarUrl(new URI(null, "", null)));
assertEquals(false, UriUtils.isJarUrl(new URI(null, "jar", null)));
assertEquals(false, UriUtils.isJarUrl(new URI(null, "jar/test/file.jar!/", null)));
assertEquals(false, UriUtils.isJarUrl(new URI("jarfile", "/test/file.jar!/", null)));
assertEquals(false, UriUtils.isJarUrl(new URI("file", "/test/file.jar!/", null)));
}
@Test
public void isJarUrlString() {
assertEquals(true, UriUtils.isJarUrl("jar:file:/test/file.jar!/"));
assertEquals(true, UriUtils.isJarUrl("JAR:file:/test/file.jar!/"));
assertEquals(true, UriUtils.isJarUrl("Jar:file:/test/file.jar!/"));
assertEquals(false, UriUtils.isJarUrl(""));
assertEquals(false, UriUtils.isJarUrl("jar"));
assertEquals(false, UriUtils.isJarUrl("jar/test/file.jar!/"));
assertEquals(false, UriUtils.isJarUrl("jax:/test/file.jar!/"));
assertEquals(false, UriUtils.isJarUrl("jarfile:/test/file.jar!/"));
assertEquals(false, UriUtils.isJarUrl("file:/test/file.jar!/"));
}
}