'A wipe created by a ``IClusterStateChange`` with a given wipe key is
not overwritten by a later ``IClusterStateChange`` with a different
key.'

def test_updates_different_key(self):

    service = self.service()
    app_node = self.WITH_APPS
    app_node_2 = NodeState(hostname=app_node.hostname, uuid=app_node.uuid, manifestations={MANIFESTATION.dataset_id: MANIFESTATION}, devices={}, paths={})
    service.apply_changes([app_node])
    advance_some(self.clock)
    service.apply_changes([app_node_2])
    advance_rest(self.clock)
    before_wipe_state = service.as_deployment()
    advance_some(self.clock)
    after_wipe_state = service.as_deployment()
    self.assertEqual([before_wipe_state, after_wipe_state], [DeploymentState(nodes=[app_node_2]), DeploymentState()])
