View Javadoc
1   package org.oxerr.commons.ws.rs.provider;
2   
3   import static org.junit.jupiter.api.Assertions.assertEquals;
4   import static org.junit.jupiter.api.Assertions.assertNull;
5   import static org.junit.jupiter.api.Assertions.assertThrows;
6   
7   import javax.ws.rs.ext.ParamConverter;
8   
9   import org.junit.jupiter.api.Test;
10  
11  class CharacterProviderTest {
12  
13  	private final CharacterProvider characterProvider = new CharacterProvider();
14  
15  	@Test
16  	void testUnsupportedRawType() {
17  		// Unsupported raw type
18  		assertNull(this.characterProvider.getConverter(String.class, null, null));
19  	}
20  
21  	@Test
22  	void testFromString() {
23  		ParamConverter<Character> c = this.characterProvider.getConverter(Character.class, null, null);
24  
25  		// null string
26  		assertThrows(IllegalArgumentException.class, () -> c.fromString(null));
27  
28  		// empty string
29  		assertNull(c.fromString(""));
30  
31  		// One character
32  		assertEquals(Character.valueOf('a'), c.fromString("a"));
33  
34  		// First character should be return.
35  		assertEquals(Character.valueOf('a'), c.fromString("ab"));
36  
37  	}
38  
39  	@Test
40  	void testToString() {
41  		ParamConverter<Character> c = this.characterProvider.getConverter(Character.class, null, null);
42  
43  		// null
44  		assertThrows(IllegalArgumentException.class, () -> c.toString(null));
45  
46  		// char
47  		assertEquals("a", c.toString('a'));
48  
49  		// Character
50  		assertEquals("a", c.toString(Character.valueOf('a')));
51  	}
52  
53  }