parent
71f30a43e9
commit
8b7ba5f18b
@ -0,0 +1,32 @@
|
|||||||
|
package space.kklochko.simple_jbdd.tests.factories.validators;
|
||||||
|
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
public class EmptyValidator extends Validator {
|
||||||
|
private boolean isInvalid;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean validate(Map<String, ArrayList<Method>> methods) {
|
||||||
|
isInvalid = (methods.size() == 0);
|
||||||
|
return isInvalid;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getErrorType() {
|
||||||
|
if(!isInvalid)
|
||||||
|
return "ok";
|
||||||
|
|
||||||
|
return "Error";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getMessage() {
|
||||||
|
if(!isInvalid)
|
||||||
|
return "ok";
|
||||||
|
|
||||||
|
return "ERROR!!! No blocks!!!";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,19 @@
|
|||||||
|
package space.kklochko.simple_jbdd.tests.factories.validators;
|
||||||
|
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
|
||||||
|
public class HasMethodsWithArgumentsValidator extends MethodValidator {
|
||||||
|
@Override
|
||||||
|
protected boolean isMethodInvalid(Method method) {
|
||||||
|
return method.getParameterCount() != 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getMessage() {
|
||||||
|
if(!isInvalid)
|
||||||
|
return "ok";
|
||||||
|
|
||||||
|
return String.format("ERROR!!! Methods must have no arguments!!! Check methods: %s!!!", getMethodListAsString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,19 @@
|
|||||||
|
package space.kklochko.simple_jbdd.tests.factories.validators;
|
||||||
|
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
|
||||||
|
public class HasNonVoidMethodsValidator extends MethodValidator {
|
||||||
|
@Override
|
||||||
|
protected boolean isMethodInvalid(Method method) {
|
||||||
|
return !method.getReturnType().equals(void.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getMessage() {
|
||||||
|
if(!isInvalid)
|
||||||
|
return "ok";
|
||||||
|
|
||||||
|
return String.format("ERROR!!! Methods must have the void type!!! Check methods: %s!!!", getMethodListAsString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,20 @@
|
|||||||
|
package space.kklochko.simple_jbdd.tests.factories.validators;
|
||||||
|
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
import java.lang.reflect.Modifier;
|
||||||
|
|
||||||
|
public class HasPrivateMethodsValidator extends MethodValidator {
|
||||||
|
@Override
|
||||||
|
protected boolean isMethodInvalid(Method method) {
|
||||||
|
return !Modifier.isPublic(method.getModifiers());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getMessage() {
|
||||||
|
if(!isInvalid)
|
||||||
|
return "ok";
|
||||||
|
|
||||||
|
return String.format("ERROR!!! Methods must be public!!! Check method: %s!!!", getMethodListAsString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,48 @@
|
|||||||
|
package space.kklochko.simple_jbdd.tests.factories.validators;
|
||||||
|
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
abstract public class MethodValidator extends Validator{
|
||||||
|
protected boolean isInvalid;
|
||||||
|
|
||||||
|
protected ArrayList<Method> invalidMethods;
|
||||||
|
|
||||||
|
protected String getMethodListAsString() {
|
||||||
|
return invalidMethods.stream()
|
||||||
|
.map(m -> m.getName())
|
||||||
|
.collect(Collectors.joining(", "));
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract protected boolean isMethodInvalid(Method method);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean validate(Map<String, ArrayList<Method>> methods) {
|
||||||
|
isInvalid = false;
|
||||||
|
invalidMethods = new ArrayList<>();
|
||||||
|
|
||||||
|
for(var key : methods.keySet()) {
|
||||||
|
for(var method : methods.get(key)) {
|
||||||
|
if(isMethodInvalid(method)) {
|
||||||
|
isInvalid = true;
|
||||||
|
invalidMethods.add(method);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return isInvalid;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getErrorType() {
|
||||||
|
if(!isInvalid)
|
||||||
|
return "ok";
|
||||||
|
|
||||||
|
return "Error";
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract public String getMessage();
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
|||||||
|
package space.kklochko.simple_jbdd.tests.factories.validators;
|
||||||
|
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
public abstract class Validator {
|
||||||
|
abstract public boolean validate(Map<String, ArrayList<Method>> methods);
|
||||||
|
abstract public String getErrorType();
|
||||||
|
abstract public String getMessage();
|
||||||
|
}
|
Loading…
Reference in new issue