@@ -1004,18 +1004,17 @@ internal class CgMethodConstructor(val context: CgContext) : CgContextOwner by c
1004
1004
} else {
1005
1005
// array of objects, have to use deep equals
1006
1006
1007
- if (expected is CgLiteral ) {
1008
- // Literal can only be Primitive or String, can use equals here
1009
- testFrameworkManager.assertEquals(expected, actual)
1010
- return
1011
- }
1012
-
1013
- require(resultModel is UtArrayModel ) {
1014
- " Result model have to be UtArrayModel to generate arrays assertion " +
1015
- " but `${resultModel::class } ` found"
1007
+ when (expected) {
1008
+ is CgLiteral -> testFrameworkManager.assertEquals(expected, actual)
1009
+ is CgNotNullAssertion -> generateForNotNullAssertion(expected, actual)
1010
+ else -> {
1011
+ require(resultModel is UtArrayModel ) {
1012
+ " Result model have to be UtArrayModel to generate arrays assertion " +
1013
+ " but `${resultModel::class } ` found"
1014
+ }
1015
+ generateDeepEqualsOrNullAssertion(expected, actual)
1016
+ }
1016
1017
}
1017
-
1018
- generateDeepEqualsOrNullAssertion(expected, actual)
1019
1018
}
1020
1019
}
1021
1020
}
@@ -1046,23 +1045,22 @@ internal class CgMethodConstructor(val context: CgContext) : CgContextOwner by c
1046
1045
}
1047
1046
else -> {
1048
1047
when (expected) {
1049
- is CgLiteral -> {
1050
- // Literal can only be Primitive or String, can use equals here
1051
- testFrameworkManager.assertEquals(expected, actual)
1052
- }
1053
- is CgNotNullAssertion -> {
1054
- require(expected.expression is CgVariable ) {
1055
- " Only Variable wrapped in CgNotNullAssertion is supported in deep equals"
1056
- }
1057
- currentBlock = currentBlock.addAll(generateDeepEqualsAssertion(expected.expression, actual))
1058
- }
1048
+ is CgLiteral -> testFrameworkManager.assertEquals(expected, actual)
1049
+ is CgNotNullAssertion -> generateForNotNullAssertion(expected, actual)
1059
1050
else -> generateDeepEqualsOrNullAssertion(expected, actual)
1060
1051
}
1061
1052
}
1062
1053
}
1063
1054
}
1064
1055
}
1065
1056
1057
+ private fun generateForNotNullAssertion (expected : CgNotNullAssertion , actual : CgVariable ) {
1058
+ require(expected.expression is CgVariable ) {
1059
+ " Only CgVariable wrapped in CgNotNullAssertion is supported in deepEquals"
1060
+ }
1061
+ generateDeepEqualsOrNullAssertion(expected.expression, actual)
1062
+ }
1063
+
1066
1064
/* *
1067
1065
* We can't use standard deepEquals method in parametrized tests
1068
1066
* because nullable objects require different asserts.
0 commit comments