'If the filesystem for a dataset is mounted on the node and the
configuration says the dataset is not meant to be manifest on that
node, ``BlockDeviceDeployer.calculate_changes`` returns a state
change to unmount the filesystem even if there is a lease, as long
as the lease is for another node.'

def test_unmount_manifestation_when_leased_elsewhere(self):

    node_state = self.ONE_DATASET_STATE
    leases = Leases().acquire(datetime.now(tz=UTC), self.DATASET_ID, uuid4())
    node_config = to_node(self.ONE_DATASET_STATE).transform(['manifestations', unicode(self.DATASET_ID)], discard)
    assert_calculated_changes(self, node_state, node_config, set(), in_parallel(changes=[UnmountBlockDevice(dataset_id=self.DATASET_ID, blockdevice_id=self.BLOCKDEVICE_ID)]), leases=leases)
