1 package org.codehaus.plexus.util;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 import java.util.Iterator;
20
21 import org.junit.jupiter.api.Test;
22
23 import static org.junit.jupiter.api.Assertions.assertEquals;
24 import static org.junit.jupiter.api.Assertions.assertFalse;
25 import static org.junit.jupiter.api.Assertions.assertTrue;
26
27
28
29
30
31
32
33
34 public class OsTest {
35
36
37
38 @Test
39 public void testUndefinedFamily() {
40 assertFalse(Os.isFamily("bogus family"));
41 }
42
43
44
45
46 @Test
47 public void testOs() {
48 Iterator<String> iter = Os.getValidFamilies().iterator();
49 String currentFamily = null;
50 String notCurrentFamily = null;
51 while (iter.hasNext() && (currentFamily == null || notCurrentFamily == null)) {
52 String fam = iter.next();
53 if (Os.isFamily(fam)) {
54 currentFamily = fam;
55 } else {
56 notCurrentFamily = fam;
57 }
58 }
59
60
61 assertEquals(currentFamily, Os.OS_FAMILY);
62
63
64 assertTrue(Os.isOs(currentFamily, null, null, null));
65 assertFalse(Os.isOs(notCurrentFamily, null, null, null));
66
67
68 assertFalse(Os.isOs("junk", null, null, null));
69
70
71 assertTrue(Os.isOs(currentFamily, Os.OS_NAME, null, null));
72
73
74 assertFalse(Os.isOs(currentFamily, "myos", null, null));
75
76
77 assertTrue(Os.isOs(currentFamily, Os.OS_NAME, Os.OS_ARCH, null));
78 assertFalse(Os.isOs(currentFamily, Os.OS_NAME, "myarch", null));
79
80
81 assertTrue(Os.isOs(currentFamily, Os.OS_NAME, Os.OS_ARCH, Os.OS_VERSION));
82 assertFalse(Os.isOs(currentFamily, Os.OS_NAME, Os.OS_ARCH, "myversion"));
83 }
84
85
86
87
88 @org.junit.jupiter.api.Test
89 public void testValidList() {
90 assertTrue(Os.isValidFamily("dos"));
91
92 assertFalse(Os.isValidFamily(""));
93 assertFalse(Os.isValidFamily(null));
94 assertFalse(Os.isValidFamily("something"));
95 }
96 }