def test_volume_type_none(self, mock_name_from_id): metadata = {} r = FakeReading(metadata=metadata) self.assertEquals('test_volume_name', volume_type(None, None, r)) metadata = {'volume_type': 'some-id'} r = FakeReading(metadata=metadata) self.assertEquals('test_volume_name', volume_type(None, None, r))
def test_availability_zone(self): metadata = {} r = FakeReading(metadata=metadata) self.assertTrue(availability_zone(None, None, r) is '') metadata = {'availability_zone': 'availability_zone'} r = FakeReading(metadata=metadata) self.assertEquals(availability_zone(None, None, r), 'availability_zone')
def test_hours(self): stop = datetime.datetime.utcnow() start = stop - datetime.timedelta(hours=1) r = FakeReading(start=start, stop=stop) self.assertEquals(hours(None, None, r), 1) stop = datetime.datetime.utcnow() start = stop - datetime.timedelta(hours=0.5) r = FakeReading(start=start, stop=stop) self.assertEquals(hours(None, None, r), 0.5)
def test_nova_metadata(self): metadata = {'metadata.test': 'nova'} r = FakeReading(metadata=metadata) self.assertEquals(metadata_field(self.key, r), 'nova') # Test insensitive metadata metadata = {'metadata.TeSt': 'nova'} r = FakeReading(metadata=metadata) self.assertEquals(metadata_field(self.key, r), 'nova') # Test insensitive key self.assertEquals(metadata_field('metadata:TEst', r), 'nova')
def test_glance_metdata(self): metadata = {'properties.test': 'glance'} r = FakeReading(metadata=metadata) self.assertEquals(metadata_field(self.key, r), 'glance') # Test insensitive metadata metadata = {'properties.TeST': 'glance'} r = FakeReading(metadata=metadata) self.assertEquals(metadata_field(self.key, r), 'glance') # Test insensitive key self.assertEquals(metadata_field('metadata:tESt', r), 'glance')
def test_swift_metadata(self): metadata = {'x-container-meta-test': 'swift'} r = FakeReading(metadata=metadata) self.assertEquals(metadata_field(self.key, r), 'swift') # Test insensitive metadata metadata = {'X-Container-Meta-Test': 'swift'} r = FakeReading(metadata=metadata) self.assertEquals(metadata_field(self.key, r), 'swift') # Test insensitive key metadata = {'x-container-meta-test': 'swift'} r = FakeReading(metadata=metadata) self.assertEquals(metadata_field('metadata:tESt', r), 'swift')
def test_image_metadata(self): metadata = {'image_meta.test': 'value'} r = FakeReading(metadata=metadata) self.assertEquals(image_metadata_field(self.key, r), 'value') # Test case insensitivity metadata = {'image_meta.TeST': 'value'} r = FakeReading(metadata=metadata) self.assertEquals(image_metadata_field('image_metadata:tEsT', r), 'value') # Test missing metadata metadata = {} r = FakeReading(metadata=metadata) assert (image_metadata_field(self.key, r) is None)
def test_cinder_metadata(self): metadata = { 'metadata': unicode("[{'key': 'test', 'value': 'cinder'}]") } r = FakeReading(metadata=metadata) self.assertEquals(metadata_field(self.key, r), 'cinder') # Test insensitive metadata metadata = { 'metadata': unicode("[{'key': 'TeSt', 'value': 'cinder'}]") } r = FakeReading(metadata=metadata) self.assertEquals(metadata_field(self.key, r), 'cinder') # Test insensitive key self.assertEquals(metadata_field('metadata:tEsT', r), 'cinder')
def test_cost(self): item = {'item_rate': 1.0} r = FakeReading(value='1.2345') # Test default {:.2f} self.assertEquals(cost({}, item, r), '1.23') # Test other d = {'cost_format': '{:.1f}'} self.assertEquals(cost(d, item, r), '1.2')
def test_metadata_field_not_present(self): r = FakeReading(metadata={}) self.assertTrue(metadata_field(self.key, r) is None)
def test_usage_amount(self): r = FakeReading() self.assertEquals(usage_amount(None, None, r), 'value')
def test_resource_id(self): r = FakeReading() self.assertEquals(resource_id(None, None, r), 'resource_id')
def test_usage_end_date(self): stop = datetime.datetime.utcnow() r = FakeReading(stop=stop) self.assertEquals(usage_end_date(None, None, r), stop.isoformat())
def test_usage_start_date(self): start = datetime.datetime.utcnow() r = FakeReading(start=start) self.assertEquals(usage_start_date(None, None, r), start.isoformat())
def test_usage_account_id(self): r = FakeReading() self.assertEquals(usage_account_id(None, None, r), 'project_id')
def test_display_name(self): r = FakeReading() self.assertTrue(display_name(None, None, r) is None) r = FakeReading(metadata={'display_name': 'display_name'}) self.assertEquals(display_name(None, None, r), 'display_name')
def test_billing_period_end_date(self): stop = datetime.datetime.utcnow() r = FakeReading(stop=stop) self.assertEquals(billing_period_end_date(None, None, r), stop.isoformat())
def test_billing_period_start_date(self): start = datetime.datetime.utcnow() r = FakeReading(start=start) self.assertEquals(billing_period_start_date(None, None, r), start.isoformat())
def test_timeinterval(self): stop = datetime.datetime.utcnow() start = stop - datetime.timedelta(hours=1) r = FakeReading(start=start, stop=stop) expected = '{}/{}'.format(start.isoformat(), stop.isoformat()) self.assertEquals(timeinterval(None, None, r), expected)
def test_project_id(self): r = FakeReading() self.assertEquals(project_id(None, None, r), 'project_id')
def test_instance_type(self): r = FakeReading() self.assertTrue(instance_type(None, None, r) is None) r = FakeReading(metadata={'instance_type': 'instance_type'}) self.assertEquals(instance_type(None, None, r), 'instance_type')
def test_snapshot_metadata(self): # Test snapshot metadata. Nested in resource metadata. metadata = {'metadata': unicode("{'tESt': 'glance'}")} r = FakeReading(metadata=metadata) self.assertEquals(metadata_field('metadata:TesT', r), 'glance')