1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.mail2.javax.resolver;
18
19 import static org.junit.jupiter.api.Assertions.assertEquals;
20 import static org.junit.jupiter.api.Assertions.assertNotNull;
21 import static org.junit.jupiter.api.Assertions.assertNull;
22 import static org.junit.jupiter.api.Assertions.assertThrows;
23
24 import java.io.IOException;
25
26 import org.apache.commons.mail2.javax.DataSourceResolver;
27 import org.junit.jupiter.api.Test;
28
29
30
31
32 public class DataSourceClassPathResolverTest extends AbstractDataSourceResolverTest {
33
34 @Test
35 public void testResolvingClassPathLenient() throws Exception {
36 DataSourceResolver dataSourceResolver;
37
38 dataSourceResolver = new DataSourceClassPathResolver("/", true);
39 assertEquals(IMG_SIZE, toByteArray(dataSourceResolver.resolve("images/asf_logo_wide.gif")).length);
40 assertEquals(IMG_SIZE, toByteArray(dataSourceResolver.resolve("./images/asf_logo_wide.gif")).length);
41 assertEquals(IMG_SIZE, toByteArray(dataSourceResolver.resolve("/images/asf_logo_wide.gif")).length);
42 assertNull(dataSourceResolver.resolve("/asf_logo_wide.gif"));
43
44 dataSourceResolver = new DataSourceClassPathResolver("/images", true);
45 assertEquals(IMG_SIZE, toByteArray(dataSourceResolver.resolve("asf_logo_wide.gif")).length);
46 assertEquals(IMG_SIZE, toByteArray(dataSourceResolver.resolve("./asf_logo_wide.gif")).length);
47 assertEquals(IMG_SIZE, toByteArray(dataSourceResolver.resolve("/asf_logo_wide.gif")).length);
48 assertNull(dataSourceResolver.resolve("./images/asf_logo_wide.gif"));
49 }
50
51 @Test
52 public void testResolvingClassPathNonLenient() throws Exception {
53 final DataSourceResolver dataSourceResolver = new DataSourceClassPathResolver("/", false);
54 assertNotNull(dataSourceResolver.resolve("images/asf_logo_wide.gif"));
55
56 assertThrows(IOException.class, () -> dataSourceResolver.resolve("asf_logo_wide.gif"));
57 }
58
59 }