'Diffing two arbitrary deployments, then applying the diff to the first
deployment yields the second even after the diff has been serialized
and re-created.'

@given(related_deployments_strategy(2))
def test_deployment_diffing(self, deployments):

    (deployment_a, deployment_b) = deployments
    diff = create_diff(deployment_a, deployment_b)
    serialized_diff = wire_encode(diff)
    newdiff = wire_decode(serialized_diff)
    should_b_b = newdiff.apply(deployment_a)
    self.assertThat(should_b_b, Equals(deployment_b))
