More tests
Einige Prüfungen sind fehlgeschlagen
SteamWarCI Build failed

Dieser Commit ist enthalten in:
yoyosource 2022-05-10 09:19:30 +02:00
Ursprung 0f636e5890
Commit 5372781618
2 geänderte Dateien mit 14 neuen und 3 gelöschten Zeilen

Datei anzeigen

@ -170,7 +170,7 @@ public abstract class AbstractSWCommand<T> {
if (compare != 0) {
return compare;
} else {
return Integer.compare(o1.comparableValue, o2.comparableValue);
return Double.compare(o1.comparableValue, o2.comparableValue);
}
});
commandHelpList.sort((o1, o2) -> {

Datei anzeigen

@ -23,6 +23,7 @@ import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
@ -30,6 +31,14 @@ import java.util.function.Predicate;
public class SubCommand<T> {
private static Map<Class<?>, Double> increment = new HashMap<>();
static {
increment.put(double.class, 0.1);
increment.put(Double.class, 0.1);
increment.put(float.class, 0.1);
increment.put(Float.class, 0.1);
}
private AbstractSWCommand<T> abstractSWCommand;
Method method;
String[] description;
@ -38,12 +47,11 @@ public class SubCommand<T> {
private Function<T, ?> senderFunction;
AbstractGuardChecker<T> guardChecker;
boolean noTabComplete;
int comparableValue;
double comparableValue;
private CommandPart<T> commandPart;
SubCommand(AbstractSWCommand<T> abstractSWCommand, Method method, String[] subCommand, Map<String, AbstractTypeMapper<T, ?>> localTypeMapper, Map<String, AbstractGuardChecker<T>> localGuardChecker, boolean help, String[] description, boolean noTabComplete) {
System.out.println(method);
this.abstractSWCommand = abstractSWCommand;
this.method = method;
this.subCommand = subCommand;
@ -52,6 +60,9 @@ public class SubCommand<T> {
Parameter[] parameters = method.getParameters();
comparableValue = parameters[parameters.length - 1].isVarArgs() ? Integer.MAX_VALUE : -parameters.length;
for (Parameter parameter : parameters) {
comparableValue += increment.getOrDefault(parameter.getType(), 0.0);
}
guardChecker = SWCommandUtils.getGuardChecker(parameters[0], localGuardChecker);