1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.beanutils2.converters;
19
20 import static org.junit.jupiter.api.Assertions.assertEquals;
21 import static org.junit.jupiter.api.Assertions.assertThrows;
22
23 import java.io.File;
24
25 import org.apache.commons.beanutils2.ConversionException;
26 import org.apache.commons.beanutils2.Converter;
27 import org.junit.jupiter.api.AfterEach;
28 import org.junit.jupiter.api.BeforeEach;
29 import org.junit.jupiter.api.Test;
30
31
32
33
34 public class FileConverterTest {
35
36 private Converter<File> converter;
37
38 protected Class<?> getExpectedType() {
39 return File.class;
40 }
41
42 protected Converter<File> makeConverter() {
43 return new FileConverter();
44 }
45
46 @BeforeEach
47 public void setUp() throws Exception {
48 converter = makeConverter();
49 }
50
51 @AfterEach
52 public void tearDown() throws Exception {
53 converter = null;
54 }
55
56 @Test
57 public void testSimpleConversion() throws Exception {
58 final String[] message = { "from String", "from String", "from String" };
59
60 final Object[] input = { "/tmp", "/tmp/foo.txt", "/tmp/does/not/exist.foo" };
61
62 final File[] expected = { new File("/tmp"), new File("/tmp/foo.txt"), new File("/tmp/does/not/exist.foo") };
63
64 for (int i = 0; i < expected.length; i++) {
65 assertEquals(expected[i], converter.convert(File.class, input[i]), message[i] + " to File");
66 assertEquals(expected[i], converter.convert(null, input[i]), message[i] + " to null type");
67 }
68 }
69
70
71
72
73 @Test
74 public void testUnsupportedTargetType() {
75 assertThrows(ConversionException.class, () -> converter.convert(Integer.class, "/tmp"));
76 }
77 }