@@ -3,14 +3,13 @@ package com.memoizr.assertk
3
3
import org.assertj.core.api.AbstractIterableAssert
4
4
import org.assertj.core.api.Assertions.assertThat
5
5
6
+
6
7
class IterableAssert <ELEMENT : Any ?, ACTUAL : Iterable <ELEMENT >> internal constructor(
7
8
subjectUnderTest : ACTUAL ? ,
8
9
override val assertion : AbstractIterableAssert <* , Iterable <ELEMENT >, ELEMENT , *> = assertThat(subjectUnderTest))// {
9
10
: AbstractAssertBuilder <IterableAssert <ELEMENT , ACTUAL >, Iterable <ELEMENT >>(subjectUnderTest, IterableAssert ::class .java) {
10
11
11
- typealias SELF = IterableAssert <ELEMENT , ACTUAL >
12
-
13
- infix fun _is (selector : SequenceSelector ): SELF {
12
+ infix fun _is (selector : SequenceSelector ): IterableAssert <ELEMENT , ACTUAL > {
14
13
when (selector) {
15
14
empty -> assertion.isEmpty()
16
15
nullOrEmpty -> assertion.isNullOrEmpty()
@@ -22,82 +21,82 @@ class IterableAssert<ELEMENT : Any?, ACTUAL : Iterable<ELEMENT>> internal constr
22
21
@Suppress(" UNCHECKED_CAST" )
23
22
private fun <T > spread (expected : Iterable <T >): Array <T > = expected.toList().toTypedArray<Any ?>() as Array <T >
24
23
25
- infix fun hasSize (size : Int ): SELF {
24
+ infix fun hasSize (size : Int ): IterableAssert < ELEMENT , ACTUAL > {
26
25
assertion.hasSize(size)
27
26
return myself
28
27
}
29
28
30
- infix fun hasSameSizeAs (expected : ACTUAL ): SELF {
29
+ infix fun hasSameSizeAs (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
31
30
assertion.hasSameSizeAs(expected)
32
31
return myself
33
32
}
34
33
35
- infix fun contains (expected : ACTUAL ): SELF {
34
+ infix fun contains (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
36
35
assertion.contains(* spread(expected))
37
36
return myself
38
37
}
39
38
40
- infix fun containsOnly (expected : ACTUAL ): SELF {
39
+ infix fun containsOnly (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
41
40
assertion.containsOnly(* spread(expected))
42
41
return myself
43
42
}
44
43
45
- infix fun containsOnlyOnce (expected : ACTUAL ): SELF {
44
+ infix fun containsOnlyOnce (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
46
45
assertion.containsOnlyOnce(* spread(expected))
47
46
return myself
48
47
}
49
48
50
- infix fun containsExactlyInAnyOrder (expected : ACTUAL ): SELF {
49
+ infix fun containsExactlyInAnyOrder (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
51
50
assertion.containsExactlyInAnyOrder(* spread(expected))
52
51
return myself
53
52
}
54
53
55
- infix fun isSubsetOf (expected : ACTUAL ): SELF {
54
+ infix fun isSubsetOf (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
56
55
assertion.isSubsetOf(* spread(expected))
57
56
return myself
58
57
}
59
58
60
- infix fun containsSequence (expected : ACTUAL ): SELF {
59
+ infix fun containsSequence (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
61
60
assertion.containsSequence(* spread(expected))
62
61
return myself
63
62
}
64
63
65
- infix fun containsSubsequence (expected : ACTUAL ): SELF {
64
+ infix fun containsSubsequence (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
66
65
assertion.containsSubsequence(* spread(expected))
67
66
return myself
68
67
}
69
68
70
- infix fun doesNotContainAnyElementsOf (expected : ACTUAL ): SELF {
69
+ infix fun doesNotContainAnyElementsOf (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
71
70
assertion.doesNotContainAnyElementsOf(expected)
72
71
return myself
73
72
}
74
73
75
- infix fun doesNotHave (duplicates : duplicates): SELF {
74
+ infix fun doesNotHave (duplicates : duplicates): IterableAssert < ELEMENT , ACTUAL > {
76
75
assertion.doesNotHaveDuplicates()
77
76
return myself
78
77
}
79
78
80
- infix fun startsWith (expected : ACTUAL ): SELF {
79
+ infix fun startsWith (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
81
80
assertion.startsWith(* spread(expected))
82
81
return myself
83
82
}
84
83
85
- infix fun startsWith (firstElement : ELEMENT ): SELF {
84
+ infix fun startsWith (firstElement : ELEMENT ): IterableAssert < ELEMENT , ACTUAL > {
86
85
assertion.startsWith(firstElement)
87
86
return myself
88
87
}
89
88
90
- infix fun endsWith (expected : ACTUAL ): SELF {
89
+ infix fun endsWith (expected : ACTUAL ): IterableAssert < ELEMENT , ACTUAL > {
91
90
assertion.endsWith(* spread(expected))
92
91
return myself
93
92
}
94
93
95
- infix fun endsWith (firstElement : ELEMENT ): SELF {
94
+ infix fun endsWith (firstElement : ELEMENT ): IterableAssert < ELEMENT , ACTUAL > {
96
95
assertion.endsWith(firstElement)
97
96
return myself
98
97
}
99
98
100
- infix fun contains (onlyNotNull : onlyNotNull? ): SELF {
99
+ infix fun contains (onlyNotNull : onlyNotNull? ): IterableAssert < ELEMENT , ACTUAL > {
101
100
if (onlyNotNull == null ) assertion.containsNull() else assertion.doesNotContainNull()
102
101
return myself
103
102
}
0 commit comments