doc / ch.tutteli.atrium.api.fluent.en_GB / asEntries

asEntries

fun <K, V, T : Map<out K, V>> Expect<T>.asEntries(): Expect<Set<Entry<K, V>>> (source)

Turns Expect<Map<K, V>> into Expect<Set<Map.Entry<K, V>>>.

The transformation as such is not reflected in reporting. Use feature { f(it::entries) } if you want to show the transformation in reporting.

expect(mapOf(1 to "a")).asEntries()
    .contains {  // subject inside this block is of type Map.Entry<Int, String> (actually <1,"a">)
        toBe(mapOf(1 to "a").entries.first())
    }

fails {
    expect(mapOf(1 to "a")).asEntries()
        .contains {  // subject inside this block is of type Map.Entry<Int, String> (actually <1,"a">)
            toBe(mapOf(1 to "b").entries.first())   // fails because <1,"a"> is not equal to <1,"b">
        }
}

Return
The newly created Expect for the transformed subject.

fun <K, V, T : Map<out K, V>> Expect<T>.asEntries(assertionCreator: Expect<Set<Entry<K, V>>>.() -> Unit): Expect<T> (source)

Turns Expect<Map<K, V>> into Expect<Set<Map.Entry<K, V>>> and expects that it holds all assertions the given assertionCreator creates for it.

The transformation as such is not reflected in reporting. Use feature { f(it::entries) } if you want to show the transformation in reporting.

expect(mapOf(1 to "a")).asEntries { // subject inside this block is of type Map.Entry<Int, String> (actually <1,"a">)
    toBe(mapOf(1 to "a").entries)
}

fails {
    expect(mapOf(1 to "a")).asEntries { // subject inside this block is of type Map.Entry<Int, String> (actually <1,"a">)
        toBe(mapOf(1 to "b").entries)   // fails because <1,"a"> is not equal to <1,"b">
    }
}

Return
an Expect for the subject of this expectation.