18
18
import org .junit .jupiter .api .Assertions ;
19
19
import org .junit .jupiter .api .Test ;
20
20
21
+ import java .util .Arrays ;
21
22
import java .util .EnumSet ;
22
23
import java .util .Set ;
23
24
24
25
public class SpecVersionTest {
25
26
@ Test
26
27
public void testGetVersionValue () {
27
28
SpecVersion ds = new SpecVersion ();
28
- Set versionFlags = EnumSet .of (
29
+ Set < SpecVersion . VersionFlag > versionFlags = EnumSet .of (
29
30
SpecVersion .VersionFlag .V4 ,
30
31
SpecVersion .VersionFlag .V201909 );
31
32
Assertions .assertEquals (ds .getVersionValue (versionFlags ), 9 ); // 0001|1000
@@ -35,27 +36,26 @@ public void testGetVersionValue() {
35
36
public void testGetVersionFlags () {
36
37
SpecVersion ds = new SpecVersion ();
37
38
38
- long numericVersionCode = SpecVersion .VersionFlag .V201909 .getVersionFlagValue ()
39
+ long numericVersionCode = SpecVersion .VersionFlag .V202012 .getVersionFlagValue ()
40
+ | SpecVersion .VersionFlag .V201909 .getVersionFlagValue ()
39
41
| SpecVersion .VersionFlag .V6 .getVersionFlagValue ()
40
- | SpecVersion .VersionFlag .V7 .getVersionFlagValue (); // 14
42
+ | SpecVersion .VersionFlag .V7 .getVersionFlagValue (); // 30
41
43
42
- Set versionFlags = ds .getVersionFlags (numericVersionCode );
44
+ Set < SpecVersion . VersionFlag > versionFlags = ds .getVersionFlags (numericVersionCode );
43
45
44
46
assert !versionFlags .contains (SpecVersion .VersionFlag .V4 );
45
47
assert versionFlags .contains (SpecVersion .VersionFlag .V6 );
46
48
assert versionFlags .contains (SpecVersion .VersionFlag .V7 );
47
49
assert versionFlags .contains (SpecVersion .VersionFlag .V201909 );
48
-
50
+ assert versionFlags . contains ( SpecVersion . VersionFlag . V202012 );
49
51
}
50
52
51
53
@ Test
52
54
public void testAllVersionValue () {
53
- long numericVersionCode =
54
- SpecVersion .VersionFlag .V201909 .getVersionFlagValue ()
55
- | SpecVersion .VersionFlag .V4 .getVersionFlagValue ()
56
- | SpecVersion .VersionFlag .V6 .getVersionFlagValue ()
57
- | SpecVersion .VersionFlag .V7 .getVersionFlagValue (); // 15
58
- Assertions .assertEquals (numericVersionCode , 15 );
59
-
55
+ long numericVersionCode = Arrays .stream (SpecVersion .VersionFlag .values ())
56
+ .map (SpecVersion .VersionFlag ::getVersionFlagValue )
57
+ .reduce ((a , b ) -> a | b )
58
+ .orElse (0L );
59
+ Assertions .assertEquals (numericVersionCode , 31 );
60
60
}
61
61
}
0 commit comments