/* * Copyright 2004-2016 EPAM Systems * * This file is part of JDI project. * * JDI is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * JDI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; * without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with JDI. If not, see <http://www.gnu.org/licenses/>. */ package com.epam.web.matcher.base; import com.epam.commons.linqinterfaces.JAction; import com.epam.commons.map.MapArray; import java.util.Collection; import java.util.List; import java.util.Map; import java.util.function.BooleanSupplier; import java.util.function.Supplier; import static com.epam.commons.LinqUtils.toIntArray; /** * Created by Roman_Iovlev on 8/28/2015. */ public interface IChecker { <T> void areEquals(T actual, T expected, String failMessage); default <T> void areEquals(T actual, T expected) { areEquals(actual, expected, null); } void matches(String actual, String regEx, String failMessage); default void matches(String actual, String expected) { matches(actual, expected, null); } void contains(String actual, String expected, String failMessage); default void contains(String actual, String expected) { contains(actual, expected, null); } void isTrue(Boolean condition, String failMessage); default void isTrue(Boolean condition) { isTrue(condition, null); } void isFalse(Boolean condition, String failMessage); default void isFalse(Boolean condition) { isFalse(condition, null); } void throwException(String actionName, JAction action, Class<Exception> exceptionClass, String exceptionText); default void throwException(String actionName, JAction action, String exceptionText) { throwException(action, null, exceptionText); } default void throwException(String actionName, JAction action, Class<Exception> exceptionClass) { throwException(action, exceptionClass, ""); } void throwException(JAction action, Class<Exception> exceptionClass, String exceptionText); default void throwException(JAction action, String exceptionText) { throwException(action, null, exceptionText); } default void throwException(JAction action, Class<Exception> exceptionClass) { throwException(action, exceptionClass, ""); } void hasNoExceptions(String actionName, JAction action); void hasNoExceptions(JAction action); void isEmpty(Object obj, String failMessage); default void isEmpty(Object obj) { isEmpty(obj, null); } void isNotEmpty(Object obj, String failMessage); default void isNotEmpty(Object obj) { isNotEmpty(obj, null); } <T> void areSame(T actual, T expected, String failMessage); default <T> void areSame(T actual, T expected) { areSame(actual, expected, null); } <T> void areDifferent(T actual, T expected, String failMessage); default <T> void areDifferent(T actual, T expected) { areDifferent(actual, expected, null); } <T> void listEquals(Collection<T> actual, Collection<T> expected, String failMessage); default <T> void listEquals(Collection<T> actual, Collection<T> expected) { listEquals(actual, expected, null); } <T> void arrayEquals(T actual, T expected, String failMessage); default <T> void arrayEquals(T actual, T expected) { arrayEquals(actual, expected, null); } <T> void entityIncludeMapArray(MapArray<String, String> actual, T entity, String failMessage); default <T> void entityIncludeMapArray(MapArray<String, String> actual, T entity) { entityIncludeMapArray(actual, entity, null); } <T> void entityEqualsToMapArray(MapArray<String, String> actual, T entity, String failMessage); default <T> void entityEqualsToMapArray(MapArray<String, String> actual, T entity) { entityEqualsToMapArray(actual, entity, null); } <T> void entityIncludeMap(Map<String, String> actual, T entity, String failMessage); default <T> void entityIncludeMap(Map<String, String> actual, T entity) { entityIncludeMap(actual, entity, null); } <T> void entityEqualsToMap(Map<String, String> actual, T entity, String failMessage); default <T> void entityEqualsToMap(Map<String, String> actual, T entity) { entityEqualsToMap(actual, entity, null); } void isSortedByAsc(int[] array, String failMessage); default void isSortedByAsc(int[] array) { isSortedByAsc(array, null); } default void isSortedByAsc(List<Integer> array, String failMessage) { isSortedByAsc(toIntArray(array), failMessage); } default void isSortedByAsc(List<Integer> array) { isSortedByAsc(toIntArray(array)); } void isSortedByDesc(int[] array, String failMessage); default void isSortedByDesc(int[] array) { isSortedByDesc(array, null); } default void isSortedByDesc(List<Integer> array, String failMessage) { isSortedByDesc(toIntArray(array), failMessage); } default void isSortedByDesc(List<Integer> array) { isSortedByDesc(toIntArray(array)); } <T> void areEquals(Supplier<T> actual, T expected, String failMessage); <T> void areEquals(Supplier<T> actual, T expected); void matches(Supplier<String> actual, String regEx, String failMessage); default void matches(Supplier<String> actual, String regEx) { matches(actual, regEx, null); } void contains(Supplier<String> actual, String expected, String failMessage); default void contains(Supplier<String> actual, String expected) { contains(actual, expected, null); } void isTrue(BooleanSupplier condition, String failMessage); default void isTrue(BooleanSupplier condition) { isTrue(condition, null); } void isFalse(BooleanSupplier condition, String failMessage); default void isFalse(BooleanSupplier condition) { isFalse(condition, null); } void isEmpty(Supplier<Object> obj, String failMessage); default void isEmpty(Supplier<Object> obj) { isEmpty(obj, null); } void isNotEmpty(Supplier<Object> obj, String failMessage); default void isNotEmpty(Supplier<Object> obj) { isNotEmpty(obj, null); } <T> void areSame(Supplier<T> actual, T expected, String failMessage); default <T> void areSame(Supplier<T> actual, T expected) { areSame(actual, expected, null); } <T> void areDifferent(Supplier<T> actual, T expected, String failMessage); default <T> void areDifferent(Supplier<T> actual, T expected) { areDifferent(actual, expected, null); } <T> void listEquals(Supplier<Collection<T>> actual, Collection<T> expected, String failMessage); default <T> void listEquals(Supplier<Collection<T>> actual, Collection<T> expected) { listEquals(actual, expected, null); } <T> void arrayEquals(Supplier<T> actual, T expected, String failMessage); default <T> void arrayEquals(Supplier<T> actual, T expected) { arrayEquals(actual, expected, null); } <T> void entityIncludeMapArray(Supplier<MapArray<String, String>> actual, T entity, String failMessage); default <T> void entityIncludeMapArray(Supplier<MapArray<String, String>> actual, T entity) { entityIncludeMapArray(actual, entity, null); } <T> void entityEqualsToMapArray(Supplier<MapArray<String, String>> actual, T entity, String failMessage); default <T> void entityEqualsToMapArray(Supplier<MapArray<String, String>> actual, T entity) { entityEqualsToMapArray(actual, entity, null); } <T> void entityIncludeMap(Supplier<Map<String, String>> actual, T entity, String failMessage); default <T> void entityIncludeMap(Supplier<Map<String, String>> actual, T entity) { entityIncludeMap(actual, entity, null); } <T> void entityEqualsToMap(Supplier<Map<String, String>> actual, T entity, String failMessage); default <T> void entityEqualsToMap(Supplier<Map<String, String>> actual, T entity) { entityEqualsToMap(actual, entity, null); } <T> BaseMatcher.ListChecker eachElementOf(Collection<T> list); <T> BaseMatcher.ListChecker eachElementOf(T[] array); }