def test_map_az_no_aggregates(self, getmd): getmd.return_value = [] reqspec = objects.RequestSpec(availability_zone='fooaz') request_filter.map_az_to_placement_aggregate(self.context, reqspec) self.assertNotIn('requested_destination', reqspec) getmd.assert_called_once_with(self.context, key='availability_zone', value='fooaz')
def test_map_az(self, mock_log, getmd): getmd.return_value = [objects.Aggregate(uuid=uuids.agg1)] reqspec = objects.RequestSpec(availability_zone='fooaz') request_filter.map_az_to_placement_aggregate(self.context, reqspec) self.assertEqual([uuids.agg1], reqspec.requested_destination.aggregates) log_lines = [c[0][0] for c in mock_log.debug.call_args_list] self.assertIn('filter added aggregates', log_lines[0]) self.assertIn('took %.1f seconds', log_lines[1])
def test_map_az_no_hint(self, getmd): reqspec = objects.RequestSpec(availability_zone=None) request_filter.map_az_to_placement_aggregate(self.context, reqspec) self.assertNotIn('requested_destination', reqspec) self.assertFalse(getmd.called)
def test_map_az(self, getmd): getmd.return_value = [objects.Aggregate(uuid=uuids.agg1)] reqspec = objects.RequestSpec(availability_zone='fooaz') request_filter.map_az_to_placement_aggregate(self.context, reqspec) self.assertEqual([uuids.agg1], reqspec.requested_destination.aggregates)
def test_map_az_disabled(self, getmd): self.flags(query_placement_for_availability_zone=False, group='scheduler') reqspec = objects.RequestSpec(availability_zone='fooaz') request_filter.map_az_to_placement_aggregate(self.context, reqspec) getmd.assert_not_called()