package org.springside.modules.utils.io; import static org.assertj.core.api.Assertions.*; import java.io.IOException; import java.util.jar.JarFile; import org.junit.Test; import com.google.common.io.Files; public class ResourceUtilTest { @Test public void test() throws IOException { // getResoruce assertThat(ResourceUtil.toString("test.txt")).contains("ABCDEFG"); assertThat(ResourceUtil.toString(ResourceUtilTest.class, "/test.txt")).contains("ABCDEFG"); assertThat(ResourceUtil.toLines("test.txt")).containsExactly("ABCDEFG", "ABC"); assertThat(ResourceUtil.toLines(ResourceUtilTest.class, "/test.txt")).containsExactly("ABCDEFG", "ABC"); // getResoruce 处理重复的资源 System.out.println(ResourceUtil.asUrl("META-INF/MANIFEST.MF")); assertThat(ResourceUtil.toString("META-INF/MANIFEST.MF")).contains("Manifest"); // getResources assertThat(ResourceUtil.getResources("META-INF/MANIFEST.MF").size()).isGreaterThan(1); System.out.println(ResourceUtil.getResources("META-INF/MANIFEST.MF")); assertThat(ResourceUtil.getResources("META-INF/MANIFEST.MF", ResourceUtilTest.class.getClassLoader()).size()) .isGreaterThan(1); } @Test public void resourceNameTest() throws IOException{ JarFile guavaFile = new JarFile(FilePathUtil.getJarPath(Files.class)); assertThat(guavaFile.getEntry("META-INF/MANIFEST.MF")).isNotNull(); assertThat(guavaFile.getEntry("/META-INF/MANIFEST.MF")).isNull(); guavaFile.close(); } }