From 60e83383ad3cc229e96486e9bc0d56dac301c960 Mon Sep 17 00:00:00 2001 From: Abduqodiri Qurbonzoda Date: Wed, 20 Feb 2019 02:46:45 +0300 Subject: [PATCH] Add containsAll(Any?) check to CollectionBehaviors --- libraries/stdlib/test/collections/CollectionBehaviors.kt | 4 +++- libraries/stdlib/test/collections/ComparisonDSL.kt | 5 +++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/libraries/stdlib/test/collections/CollectionBehaviors.kt b/libraries/stdlib/test/collections/CollectionBehaviors.kt index 4771cc2c542..59eb12f484c 100644 --- a/libraries/stdlib/test/collections/CollectionBehaviors.kt +++ b/libraries/stdlib/test/collections/CollectionBehaviors.kt @@ -19,7 +19,7 @@ public fun CompareContext>.listBehavior() { for (index in expected.indices) propertyEquals { this[index] } - propertyFails { this[size] } + propertyFailsWith { this[size] } propertyEquals { indexOf(elementAtOrNull(0)) } propertyEquals { lastIndexOf(elementAtOrNull(0)) } @@ -103,6 +103,8 @@ public fun CompareContext>.collectionBehavior(objectName: Stri (object {}).let { propertyEquals { contains(it as Any?) } } propertyEquals { contains(firstOrNull()) } propertyEquals { containsAll(this) } + (object {}).let { propertyEquals { containsAll(listOf(it)) } } + propertyEquals { containsAll(listOf(null)) } } diff --git a/libraries/stdlib/test/collections/ComparisonDSL.kt b/libraries/stdlib/test/collections/ComparisonDSL.kt index 878aab0aae4..9b4cae683bf 100644 --- a/libraries/stdlib/test/collections/ComparisonDSL.kt +++ b/libraries/stdlib/test/collections/ComparisonDSL.kt @@ -31,6 +31,11 @@ public class CompareContext(public val expected: T, public val actual: T) assertFailEquals({ expected.getter() }, { actual.getter() }) } + public inline fun propertyFailsWith(crossinline getter: T.() -> Unit) { + assertFailsWith { expected.getter() } + assertFailsWith { actual.getter() } + } + public fun

compareProperty(getter: T.() -> P, block: CompareContext

.() -> Unit) { compare(expected.getter(), actual.getter(), block) }