1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.codec;
19
20 import static org.junit.jupiter.api.Assertions.assertEquals;
21
22 import java.nio.charset.Charset;
23 import java.nio.charset.StandardCharsets;
24 import java.util.Collection;
25 import java.util.SortedSet;
26 import java.util.TreeSet;
27
28 import org.apache.commons.io.Charsets;
29 import org.junit.jupiter.api.Test;
30
31
32
33
34 public class CharsetsTest {
35
36 private static final TreeSet<String> AVAILABLE_CHARSET_NAMES = new TreeSet<>(Charset.availableCharsets().keySet());
37
38 public static SortedSet<String> getAvailableCharsetNames() {
39 return AVAILABLE_CHARSET_NAMES;
40 }
41
42 public static Collection<Charset> getRequiredCharsets() {
43 return Charsets.requiredCharsets().values();
44 }
45
46 @SuppressWarnings("deprecation")
47 @Test
48 public void testIso8859_1() {
49 assertEquals("ISO-8859-1", Charsets.ISO_8859_1.name());
50 }
51
52 @Test
53 public void testToCharset() {
54 assertEquals(Charset.defaultCharset(), Charsets.toCharset((String) null));
55 assertEquals(Charset.defaultCharset(), Charsets.toCharset((Charset) null));
56 assertEquals(Charset.defaultCharset(), Charsets.toCharset(Charset.defaultCharset()));
57 assertEquals(StandardCharsets.UTF_8, Charsets.toCharset(StandardCharsets.UTF_8));
58 }
59
60 @SuppressWarnings("deprecation")
61 @Test
62 public void testUsAscii() {
63 assertEquals(StandardCharsets.US_ASCII.name(), Charsets.US_ASCII.name());
64 }
65
66 @SuppressWarnings("deprecation")
67 @Test
68 public void testUtf16() {
69 assertEquals(StandardCharsets.UTF_16.name(), Charsets.UTF_16.name());
70 }
71
72 @SuppressWarnings("deprecation")
73 @Test
74 public void testUtf16Be() {
75 assertEquals(StandardCharsets.UTF_16BE.name(), Charsets.UTF_16BE.name());
76 }
77
78 @SuppressWarnings("deprecation")
79 @Test
80 public void testUtf16Le() {
81 assertEquals(StandardCharsets.UTF_16LE.name(), Charsets.UTF_16LE.name());
82 }
83
84 @SuppressWarnings("deprecation")
85 @Test
86 public void testUtf8() {
87 assertEquals(StandardCharsets.UTF_8.name(), Charsets.UTF_8.name());
88 }
89
90 }