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.time.ZoneOffset;
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 ZoneOffsetConverterTest {
35
36 private Converter<ZoneOffset> converter;
37
38 protected Class<?> getExpectedType() {
39 return ZoneOffset.class;
40 }
41
42 protected Converter<ZoneOffset> makeConverter() {
43 return new ZoneOffsetConverter();
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", "from String", "from String", "from String", "from String", "from String", };
59
60 final Object[] input = { "-12:00", "+14:00", "+02:00" };
61
62 final ZoneOffset[] expected = { ZoneOffset.of("-12:00"), ZoneOffset.of("+14:00"), ZoneOffset.of("+02:00") };
63
64 for (int i = 0; i < expected.length; i++) {
65 assertEquals(expected[i], converter.convert(ZoneOffset.class, input[i]), message[i] + " to URI");
66 assertEquals(expected[i], converter.convert(null, input[i]), message[i] + " to null type");
67 }
68
69 for (int i = 0; i < expected.length; i++) {
70 assertEquals(input[i], converter.convert(String.class, expected[i]), input[i] + " to String");
71 }
72 }
73
74
75
76
77 @Test
78 public void testUnsupportedType() {
79 assertThrows(ConversionException.class, () -> converter.convert(ConversionException.class, "http://www.apache.org"));
80 }
81 }