diff --git a/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/util/JsonToJsonPathsConverter.groovy b/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/util/JsonToJsonPathsConverter.groovy index 460edae2a8..a6fdd9a1a3 100644 --- a/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/util/JsonToJsonPathsConverter.groovy +++ b/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/util/JsonToJsonPathsConverter.groovy @@ -163,7 +163,6 @@ class JsonToJsonPathsConverter { containsOnlyEmptyElements(object) && isNotRootArray(matcherPath)) { String pathToDelete = pathToDelete(pathWithoutAnyArray) - context.delete(pathToDelete) if (pathToDelete.contains(DESCENDANT_OPERATOR)) { Object root = context.read('$') if (rootContainsEmptyContainers(root)) { @@ -172,6 +171,8 @@ class JsonToJsonPathsConverter { return false } return false + } else { + context.delete(pathToDelete) } return removeTrailingContainers(pathToDelete, context) }