1
1
package com .comphenix .packetwrapper ;
2
2
3
- import java .io .File ;
4
- import java .lang .reflect .Constructor ;
5
- import java .lang .reflect .Method ;
6
- import java .net .MalformedURLException ;
7
- import java .net .URL ;
8
- import java .net .URLClassLoader ;
9
- import java .util .ArrayList ;
10
- import java .util .List ;
11
-
12
3
import com .comphenix .packetwrapper .util .Removed ;
13
4
import com .comphenix .packetwrapper .utils .ItemFactoryDelegate ;
14
5
import com .comphenix .protocol .PacketType ;
15
6
import com .comphenix .protocol .reflect .FieldUtils ;
16
7
import com .comphenix .protocol .utility .Constants ;
17
8
import com .comphenix .protocol .utility .MinecraftReflection ;
18
9
import com .comphenix .protocol .utility .MinecraftVersion ;
19
- import com .google .common .base .CaseFormat ;
20
-
21
10
import io .netty .buffer .ByteBuf ;
22
11
import io .netty .buffer .Unpooled ;
23
-
24
12
import net .minecraft .server .v1_15_R1 .DispenserRegistry ;
25
-
26
13
import org .bukkit .Bukkit ;
27
14
import org .bukkit .Server ;
28
15
import org .bukkit .World ;
31
18
import org .junit .BeforeClass ;
32
19
import org .junit .Test ;
33
20
34
- import static org .mockito .Mockito .*;
35
- import static org .junit .Assert .*;
21
+ import java .io .File ;
22
+ import java .lang .reflect .Constructor ;
23
+ import java .lang .reflect .Method ;
24
+ import java .net .MalformedURLException ;
25
+ import java .net .URL ;
26
+ import java .net .URLClassLoader ;
27
+ import java .util .ArrayList ;
28
+ import java .util .List ;
29
+ import java .util .Objects ;
30
+
31
+ import static org .junit .Assert .assertEquals ;
32
+ import static org .mockito .Mockito .mock ;
33
+ import static org .mockito .Mockito .when ;
36
34
37
35
public class TestWrappers {
38
36
37
+ private static String stripLast (final String classFileName , final int nChars ) {
38
+ return classFileName .substring (0 , classFileName .length () - nChars );
39
+ }
40
+
39
41
@ BeforeClass
40
42
public static void beforeClass () {
41
43
MinecraftReflection .setMinecraftPackage (Constants .NMS , Constants .OBC );
@@ -66,20 +68,20 @@ public void testWrappers() throws MalformedURLException, ClassNotFoundException,
66
68
File classFolder = new File ("target/classes" );
67
69
File wrappersFolder = new File (classFolder , "com/comphenix/packetwrapper" );
68
70
69
- URL [] urls = new URL [] { classFolder .toURI ().toURL () };
71
+ URL [] urls = { classFolder .toURI ().toURL () };
70
72
71
73
ClassLoader cl = new URLClassLoader (urls );
72
74
73
75
int failures = 0 ;
74
76
List <PacketType > types = new ArrayList <>();
75
77
76
- for (String wrapper : wrappersFolder .list ()) {
77
- if (!wrapper .startsWith ("Wrapper" ) || wrapper .contains ("$" )) {
78
+ for (String wrapper : Objects . requireNonNull ( wrappersFolder .list () )) {
79
+ if (!wrapper .startsWith ("Wrapper" ) || wrapper .contains ("$" ) || ! wrapper . endsWith ( ".class" ) ) {
78
80
continue ;
79
81
}
80
82
81
83
Class <? extends AbstractPacket > clazz = (Class <? extends AbstractPacket >)
82
- cl .loadClass ("com.comphenix.packetwrapper." + wrapper . replace ( ".class" , "" ) );
84
+ cl .loadClass ("com.comphenix.packetwrapper." + stripLast ( wrapper , 6 ) /* remove `.class` */ );
83
85
84
86
if (clazz .getAnnotation (Deprecated .class ) != null ) {
85
87
System .out .println ("Skipping deprecated wrapper " + clazz .getSimpleName ());
@@ -91,7 +93,7 @@ public void testWrappers() throws MalformedURLException, ClassNotFoundException,
91
93
Constructor <? extends AbstractPacket > ctor = clazz .getConstructor ();
92
94
AbstractPacket instance = ctor .newInstance ();
93
95
94
- PacketType type = instance .handle .getType ();
96
+ PacketType type = instance .getHandle () .getType ();
95
97
types .add (type );
96
98
97
99
if (type == PacketType .Play .Server .COMBAT_EVENT ) {
0 commit comments