I'd prefer:

```python
def test_content_of_parts(self):
    def parts_equal(part, sample):
        return part.content == encode_with(sample[1], 'utf-8')

    parts_iter = zip(self.decoded_1.parts, self.sample_1)
    assert all(parts_equal(part, sample) for part, sample in parts_iter)
```

The last line avoids creating a new list since `all` takes a generator as well.