// Path: spring-influxdb-orm/src/main/java/com/vgerbot/orm/influxdb/param/ParameterSignature.java
// public class ParameterSignature {
// 	private final int index;
// 	private final String name;
// 	private final Class<?> type;
// 
// 	private ParameterSignature(int index, String name, Class<?> type) {
// 		super();
// 		this.index = index;
// 		this.name = name;
// 		this.type = type;
// 	}
// 
// 	public static ParameterSignature signature(int index, Parameter parameter, String aliasName) {
// 		Class<?> type = parameter.getType();
// 		return new ParameterSignature(index, aliasName, type);
// 	}
// 
// 	public static ParameterSignature signature(int index, Parameter parameter) {
// 		String name = parameter.getName();
// 		Class<?> type = parameter.getType();
// 		return new ParameterSignature(index, name, type);
// 	}
// 
// 	public static List<ParameterSignature> signatures(Method method) {
// 		Parameter[] parameters = method.getParameters();
// 		List<ParameterSignature> signatures = new ArrayList<>(parameters.length);
// 
// 		for (int i = 0; i < parameters.length; i++) {
// 			Parameter parameter = parameters[i];
// 			signatures.add(signature(i, parameter));
// 		}
// 
// 		return signatures;
// 	}
// 
// 	public int getIndex() {
// 		return index;
// 	}
// 
// 	public String getName() {
// 		return name;
// 	}
// 
// 	public Class<?> getType() {
// 		return type;
// 	}
// 
// 	public ParameterValue value(Object value) {
// 		return new ParameterValue(value, this);
// 	}
// }
// 
// Path: spring-influxdb-orm/src/main/java/com/vgerbot/orm/influxdb/param/ParameterValue.java
// public class ParameterValue {
// 	private final Object value;
// 	private final ParameterSignature signature;
// 
// 	public ParameterValue(Object value, ParameterSignature signature) {
// 		super();
// 		this.value = value;
// 		this.signature = signature;
// 	}
// 
// 	public Object getValue() {
// 		return value;
// 	}
// 
// 	public ParameterSignature getSignature() {
// 		return signature;
// 	}
// 
// }


import com.vgerbot.orm.influxdb.param.ParameterSignature;
import com.vgerbot.orm.influxdb.param.ParameterValue;
import org.apache.commons.lang3.StringUtils;
import org.mockito.ArgumentMatcher;
import org.mockito.internal.progress.ThreadSafeMockingProgress;
import org.mockito.internal.util.Primitives;
import java.util.Map;
import java.util.Objects;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
package com.vgerbot.test.orm.influxdb.common;




public class MockitoMatchers {
    private static ParameterSignature createMockParameterSignature(int index, String name, Class<?> type) {
        ParameterSignature signature = mock(ParameterSignature.class);
        when(signature.getIndex()).thenReturn(index);
        when(signature.getName()).thenReturn(name);
        when((Object)signature.getType()).thenReturn(type);
        return signature;
    }

// Path: spring-influxdb-orm/src/main/java/com/vgerbot/orm/influxdb/param/ParameterSignature.java
// public class ParameterSignature {
// 	private final int index;
// 	private final String name;
// 	private final Class<?> type;
// 
// 	private ParameterSignature(int index, String name, Class<?> type) {
// 		super();
// 		this.index = index;
// 		this.name = name;
// 		this.type = type;
// 	}
// 
// 	public static ParameterSignature signature(int index, Parameter parameter, String aliasName) {
// 		Class<?> type = parameter.getType();
// 		return new ParameterSignature(index, aliasName, type);
// 	}
// 
// 	public static ParameterSignature signature(int index, Parameter parameter) {
// 		String name = parameter.getName();
// 		Class<?> type = parameter.getType();
// 		return new ParameterSignature(index, name, type);
// 	}
// 
// 	public static List<ParameterSignature> signatures(Method method) {
// 		Parameter[] parameters = method.getParameters();
// 		List<ParameterSignature> signatures = new ArrayList<>(parameters.length);
// 
// 		for (int i = 0; i < parameters.length; i++) {
// 			Parameter parameter = parameters[i];
// 			signatures.add(signature(i, parameter));
// 		}
// 
// 		return signatures;
// 	}
// 
// 	public int getIndex() {
// 		return index;
// 	}
// 
// 	public String getName() {
// 		return name;
// 	}
// 
// 	public Class<?> getType() {
// 		return type;
// 	}
// 
// 	public ParameterValue value(Object value) {
// 		return new ParameterValue(value, this);
// 	}
// }
// 
// Path: spring-influxdb-orm/src/main/java/com/vgerbot/orm/influxdb/param/ParameterValue.java
// public class ParameterValue {
// 	private final Object value;
// 	private final ParameterSignature signature;
// 
// 	public ParameterValue(Object value, ParameterSignature signature) {
// 		super();
// 		this.value = value;
// 		this.signature = signature;
// 	}
// 
// 	public Object getValue() {
// 		return value;
// 	}
// 
// 	public ParameterSignature getSignature() {
// 		return signature;
// 	}
// 
// }


// Path: spring-influxdb-orm/src/test/java/com/vgerbot/test/orm/influxdb/common/MockitoMatchers.java
import com.vgerbot.orm.influxdb.param.ParameterSignature;
import com.vgerbot.orm.influxdb.param.ParameterValue;
import org.apache.commons.lang3.StringUtils;
import org.mockito.ArgumentMatcher;
import org.mockito.internal.progress.ThreadSafeMockingProgress;
import org.mockito.internal.util.Primitives;
import java.util.Map;
import java.util.Objects;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

package com.vgerbot.test.orm.influxdb.common;




public class MockitoMatchers {
    private static ParameterSignature createMockParameterSignature(int index, String name, Class<?> type) {
        ParameterSignature signature = mock(ParameterSignature.class);
        when(signature.getIndex()).thenReturn(index);
        when(signature.getName()).thenReturn(name);
        when((Object)signature.getType()).thenReturn(type);
        return signature;
    }

    public static Map<String, ParameterValue> parameters(Map<String, ParameterValue> value) {