the issue is that you were not checking all keys of the etalon either. Because of this line, you were checking that keys being in both are the same, not that keys being in the etalon are present in the output with the right value.

The following case would have passed:

```gherkin
Then the response should contain partial json:
  """
  { "foo": "bar" }
  """
```
when the response contains

```json
{ "invalid": "response" }
```