sealed class Assert<out T>
Platform and version requirements: Common
An assertion. Holds an actual value to assertion on and an optional name.
See Also
val |
|
val name: String? |
fun <R>
Asserts on the given value with an optional name. |
|
abstract fun <R> assertThat(actual: R, name: String? = this.name): Assert<R>
Asserts on the given value with an optional name. |
|
fun given(assertion: (T) -> Unit): Unit
Allows checking the actual value of an assert. This can be used to build your own custom assertions. |
|
fun <R> transform(name: String? = this.name, transform: (T) -> R): Assert<R>
Transforms an assertion from one type to another. If the assertion is failing the resulting assertion will still be failing, otherwise the mapping function is called. An optional name can be provided, otherwise this assertion's name will be used. |
|
all |
fun <T> Assert<T>.all(message: String = SoftFailure.defaultMessage, body: Assert<T>.() -> Unit): Unit
All assertions in the given lambda are run. |
|
atLeast |
fun <E, T : Iterable<E>> Assert<T>.atLeast(times: Int, f: (Assert<E>) -> Unit): Unit
Asserts on each item in the iterable, passing if at least |
|
atMost |
fun <E, T : Iterable<E>> Assert<T>.atMost(times: Int, f: (Assert<E>) -> Unit): Unit
Asserts on each item in the iterable, passing if at most |
|
cause |
fun Assert<Throwable>.cause(): Assert<Throwable?>
Returns an assert on the throwable's cause. |
|
contains |
fun <T> Assert<Array<T>>.contains(element: Any?): Unit
Asserts the array contains the expected element, using fun Assert<Iterable<*>>.contains(element: Any?): Unit
Asserts the iterable contains the expected element, using fun <K, V> Assert<Map<K, V>>.contains(key: K, value: V): Unitfun <K, V> Assert<Map<K, V>>.contains(element: <ERROR CLASS><K, V>): Unit
Asserts the map contains the expected key-value pair. fun Assert<String>.contains(other: CharSequence, ignoreCase: Boolean = false): Unit
Asserts the string contains the expected string. |
|
containsAll |
fun <T> Assert<Array<T>>.containsAll(vararg elements: Any?): Unit
Asserts the array contains all the expected elements, in any order. The array may also contain additional elements. fun Assert<Collection<*>>.containsAll(vararg elements: Any?): Unit
Asserts the collection contains all the expected elements, in any order. The collection may also contain additional elements. fun <K, V> Assert<Map<K, V>>.containsAll(vararg elements: <ERROR CLASS><K, V>): Unit
Asserts the map contains all the expected elements. The map may also contain additional elements. |
|
containsExactly |
fun <T> Assert<Array<T>>.containsExactly(vararg elements: Any?): Unit
Asserts the array contains exactly the expected elements. They must be in the same order and there must not be any extra elements. fun Assert<List<*>>.containsExactly(vararg elements: Any?): Unit
Asserts the list contains exactly the expected elements. They must be in the same order and there must not be any extra elements. |
|
containsNone |
fun <T> Assert<Array<T>>.containsNone(vararg elements: Any?): Unitfun Assert<Collection<*>>.containsNone(vararg elements: Any?): Unit
Asserts the collection does not contain any of the expected elements. fun <K, V> Assert<Map<K, V>>.containsNone(vararg elements: <ERROR CLASS><K, V>): Unit
Asserts the map does not contain any of the expected elements. |
|
containsOnly |
fun Assert<Collection<*>>.containsOnly(vararg elements: Any?): Unit
Asserts the collection contains only the expected elements fun <K, V> Assert<Map<K, V>>.containsOnly(vararg elements: <ERROR CLASS><K, V>): Unit
Asserts the map contains only the expected elements. There must not be any extra elements. |
|
doesNotContain |
fun <T> Assert<Array<T>>.doesNotContain(element: Any?): Unit
Asserts the array does not contain the expected element, using fun Assert<Iterable<*>>.doesNotContain(element: Any?): Unit
Asserts the iterable does not contain the expected element, using fun <K, V> Assert<Map<K, V>>.doesNotContain(key: K, value: V): Unitfun <K, V> Assert<Map<K, V>>.doesNotContain(element: <ERROR CLASS><K, V>): Unit
Asserts the map does not contain the expected key-value pair. fun Assert<String>.doesNotContain(other: CharSequence, ignoreCase: Boolean = false): Unit
Asserts the string does not contain the specified string. |
|
doesNotHaveClass |
fun <T : Any> Assert<T>.doesNotHaveClass(kclass: KClass<out T>): Unit
Asserts the value does not have the expected kotlin class. This is an exact match, so
|
|
each |
fun <T> Assert<Array<T>>.each(f: (Assert<T>) -> Unit): Unit
Asserts on each item in the array. The given lambda will be run for each item. fun <E> Assert<Iterable<E>>.each(f: (Assert<E>) -> Unit): Unit
Asserts on each item in the iterable. The given lambda will be run for each item. |
|
endsWith |
fun Assert<String>.endsWith(other: String, ignoreCase: Boolean = false): Unit
Asserts the string ends with the expected string. |
|
exactly |
fun <E, T : Iterable<E>> Assert<T>.exactly(times: Int, f: (Assert<E>) -> Unit): Unit
Asserts on each item in the iterable, passing if exactly |
|
expected |
fun <T> Assert<T>.expected(message: String, expected: Any? = NONE, actual: Any? = NONE): Nothing
Fails an assert with the given expected message. These should be in the format: |
|
fail |
fun <T> Assert<T>.fail(expected: Any?, actual: Any?): Unit
Fails an assert with the given expected and actual values. |
|
hasCause |
fun Assert<Throwable>.hasCause(cause: Throwable): Unit
Asserts the throwable is similar to the expected cause, checking the type and message. |
|
hasClass |
fun <T : Any> Assert<T>.hasClass(kclass: KClass<out T>): Unit
Asserts the value has the expected kotlin class. This is an exact match, so |
|
hasHashCode |
fun Assert<Any>.hasHashCode(hashCode: Int): Unit
Asserts the value has the expected hash code from it's hashCode. |
|
hasLength |
fun Assert<CharSequence>.hasLength(length: Int): Unit
Asserts the char sequence has the expected length. |
|
hasLineCount |
fun Assert<String>.hasLineCount(lineCount: Int): Unit
Asserts the string has the expected number of lines. |
|
hasMessage |
fun Assert<Throwable>.hasMessage(message: String?): Unit
Asserts the throwable has the expected message. |
|
hasNoCause |
fun Assert<Throwable>.hasNoCause(): Unit
Asserts the throwable has no cause. |
|
hasRootCause |
fun Assert<Throwable>.hasRootCause(cause: Throwable): Unit
Asserts the throwable is similar to the expected root cause, checking the type and message. |
|
hasSameLengthAs |
fun Assert<CharSequence>.hasSameLengthAs(other: CharSequence): Unit
Asserts the char sequence has the same length as the expected one. |
|
hasSameSizeAs |
fun <T> Assert<Array<T>>.hasSameSizeAs(other: Array<*>): Unit
Asserts the array has the same size as the expected array. fun Assert<Collection<*>>.hasSameSizeAs(other: Collection<*>): Unit
Asserts the collection has the same size as the expected collection. fun Assert<Map<*, *>>.hasSameSizeAs(other: Map<*, *>): Unit
Asserts the map has the same size as the expected map. |
|
hasSize |
fun Assert<Array<*>>.hasSize(size: Int): Unit
Asserts the array has the expected size. fun Assert<Collection<*>>.hasSize(size: Int): Unitfun Assert<Map<*, *>>.hasSize(size: Int): Unit
Asserts the collection has the expected size. |
|
hasToString |
fun <T> Assert<T>.hasToString(string: String): Unit
Asserts the value has the expected string from it's toString. |
|
hashCodeFun |
fun <T : Any> Assert<T>.hashCodeFun(): Assert<Int>
Returns an assert on the hasCode method of the value. |
|
index |
fun <T> Assert<Array<T>>.fun <T> Assert<Array<T>>.index(index: Int): Assert<T>
Returns an assert that assertion on the value at the given index in the array. fun <T> Assert<List<T>>.fun <T> Assert<List<T>>.index(index: Int): Assert<T>
Returns an assert that assertion on the value at the given index in the list. |
|
isBetween |
fun <A, B : Comparable<A>> Assert<B>.isBetween(start: A, end: A): Unit
Asserts the value is between the expected start and end values, inclusive. |
|
isCloseTo |
fun Assert<Float>.isCloseTo(value: Float, delta: Float): Unitfun Assert<Double>.isCloseTo(value: Double, delta: Double): Unit
Asserts the value if it is close to the expected value with given delta. |
|
isEmpty |
fun Assert<Array<*>>.isEmpty(): Unit
Asserts the array is empty. fun Assert<CharSequence>.isEmpty(): Unit
Asserts the char sequence is empty. fun Assert<Collection<*>>.isEmpty(): Unitfun Assert<Map<*, *>>.isEmpty(): Unit
Asserts the collection is empty. fun Assert<Iterable<*>>.isEmpty(): Unit
Asserts the iterable is empty. |
|
isEqualTo |
fun <T> Assert<T>.isEqualTo(expected: Any?): Unit
Asserts the value is equal to the expected one, using fun <T> Assert<Array<T>>.isEqualTo(expected: Array<T>): Unit
Asserts the array contents are equal to the expected one, using contentDeepEquals. fun Assert<String?>.isEqualTo(other: String?, ignoreCase: Boolean = false): Unit
Asserts the string is equal to the expected string. |
|
isEqualToWithGivenProperties |
fun <T> Assert<T>.isEqualToWithGivenProperties(other: T, vararg properties: KProperty1<T, Any>): Unit
Returns an assert that compares only the given properties on the calling class |
|
isFalse |
fun Assert<Boolean>.isFalse(): Unit
Asserts the boolean is false. |
|
isGreaterThan |
fun <A, B : Comparable<A>> Assert<B>.isGreaterThan(other: A): Unit
Asserts the value is greater than the expected value, using |
|
isGreaterThanOrEqualTo |
fun <A, B : Comparable<A>> Assert<B>.isGreaterThanOrEqualTo(other: A): Unit
Asserts the value is greater or equal to the expected value, using |
|
isIn |
fun <T> Assert<T>.isIn(vararg values: T): Unit
Asserts the value is in the expected values, using |
|
isInstanceOf |
fun <T : Any, S : T> Assert<T>.fun <T : Any, S : T> Assert<T>.isInstanceOf(kclass: KClass<S>): Assert<S>
Asserts the value is an instance of the expected kotlin class. Both |
|
isLessThan |
fun <A, B : Comparable<A>> Assert<B>.isLessThan(other: A): Unit
Asserts the value is less than the expected value, using |
|
isLessThanOrEqualTo |
fun <A, B : Comparable<A>> Assert<B>.isLessThanOrEqualTo(other: A): Unit
Asserts the value is less than or equal to the expected value, using |
|
isNegative |
fun <T : Number> Assert<T>.isNegative(): Unit
Asserts the number is less than 0. |
|
isNotEmpty |
fun Assert<Array<*>>.isNotEmpty(): Unit
Asserts the array is not empty. fun Assert<CharSequence>.isNotEmpty(): Unit
Asserts the char sequence is not empty. fun Assert<Collection<*>>.isNotEmpty(): Unitfun Assert<Map<*, *>>.isNotEmpty(): Unit
Asserts the collection is not empty. fun Assert<Iterable<*>>.isNotEmpty(): Unit
Asserts the iterable is not empty. |
|
isNotEqualTo |
fun <T> Assert<T>.isNotEqualTo(expected: Any?): Unit
Asserts the value is not equal to the expected one, using fun <T> Assert<Array<T>>.isNotEqualTo(expected: Array<T>): Unit
Asserts the array contents are not equal to the expected one, using contentDeepEquals. fun Assert<String?>.isNotEqualTo(other: String?, ignoreCase: Boolean = false): Unit
Asserts the string is not equal to the expected string. |
|
isNotIn |
fun <T> Assert<T>.isNotIn(vararg values: T): Unit
Asserts the value is not in the expected values, using |
|
isNotInstanceOf |
fun <T : Any> Assert<T>.isNotInstanceOf(kclass: KClass<out T>): Unit
Asserts the value is not an instance of the expected kotlin class. Both
|
|
isNotNull |
fun <T : Any> Assert<T?>.fun <T : Any> Assert<T?>.isNotNull(): Assert<T>
Asserts the value is not null. You can pass in an optional lambda to run additional assertions on the non-null value. |
|
isNotSameAs |
fun <T> Assert<T>.isNotSameAs(expected: Any?): Unit
Asserts the value is not the same as the expected one, using |
|
isNotZero |
fun <T : Number> Assert<T>.isNotZero(): Unit
Asserts the number is not 0. |
|
isNull |
fun <T : Any> Assert<T?>.isNull(): Unit
Asserts the value is null. |
|
isNullOrEmpty |
fun Assert<Array<*>?>.isNullOrEmpty(): Unit
Asserts the array is null or empty. fun Assert<CharSequence?>.isNullOrEmpty(): Unit
Asserts the char sequence is null or empty. fun Assert<Collection<*>?>.isNullOrEmpty(): Unitfun Assert<Map<*, *>?>.isNullOrEmpty(): Unit
Asserts the collection is null or empty. |
|
isPositive |
fun <T : Number> Assert<T>.isPositive(): Unit
Asserts the number is greater than 0. |
|
isSameAs |
fun <T> Assert<T>.isSameAs(expected: T): Unit
Asserts the value is the same as the expected one, using |
|
isStrictlyBetween |
fun <A, B : Comparable<A>> Assert<B>.isStrictlyBetween(start: A, end: A): Unit
Asserts the value is between the expected start and end values, non-inclusive. |
|
isTrue |
fun Assert<Boolean>.isTrue(): Unit
Asserts the boolean is true. |
|
isZero |
fun <T : Number> Assert<T>.isZero(): Unit
Asserts the number is 0. |
|
kClass |
fun <T : Any> Assert<T>.kClass(): Assert<KClass<out T>>
Returns an assert on the kotlin class of the value. |
|
key |
fun <K, V> Assert<Map<K, V>>.fun <K, V> Assert<Map<K, V>>.key(key: K): Assert<V>
Returns an assert that asserts on the value at the given key in the map. |
|
length |
fun Assert<CharSequence>.length(): Assert<Int>
Returns an assert on the CharSequence's length. |
|
matches |
fun Assert<String>.matches(regex: <ERROR CLASS>): Unit
Asserts the string matches the expected regular expression. |
|
matchesPredicate |
fun <T> Assert<T>.matchesPredicate(f: (T) -> Boolean): Unit
Asserts if the values satisfies the predicate provided. |
|
message |
fun Assert<Throwable>.message(): Assert<String?>
Returns an assert on the throwable's message. |
|
none |
fun <E> Assert<Iterable<E>>.none(f: (Assert<E>) -> Unit): Unit
Asserts on each item in the iterable, passing if none of the items pass. The given lambda will be run for each item. |
|
prop |
fun <T, P> Assert<T>.prop(name: String, extract: (T) -> P): Assert<P>
Returns an assert that asserts on the given property of the value. |
|
rootCause |
fun Assert<Throwable>.rootCause(): Assert<Throwable>
Returns an assert on the throwable's root cause. |
|
size |
fun Assert<Array<*>>.size(): Assert<Int>
Returns an assert on the Arrays's size. fun Assert<Collection<*>>.size(): Assert<Int>
Returns an assert on the Collection's size. fun Assert<Map<*, *>>.size(): Assert<Int>
Returns an assert on the Maps's size. |
|
startsWith |
fun Assert<String>.startsWith(other: String, ignoreCase: Boolean = false): Unit
Asserts the string starts with the expected string. |
|
toStringFun |
fun <T> Assert<T>.toStringFun(): Assert<String>
Returns an assert on the toString method of the value. |
|
FailingAssert |
class FailingAssert<out T> : Assert<T> |
|
ValueAssert |
class ValueAssert<out T> : Assert<T> |