def test_aws_informer_to_flat_dict(self): '''Test flat to_dict output without specific resource knowledge.''' resource = GLOBAL_MEDIATOR.entities('elb')[0] informer = aws_informer.AWSInformer(resource, mediator=GLOBAL_MEDIATOR) as_flat_dict = informer.to_dict(flat=True) self.assertTrue(isinstance(as_flat_dict, list)) self.assertTrue(isinstance(as_flat_dict[0], dict)) informer.expand() as_flat_dict = informer.to_dict(flat=True) self.assertTrue(isinstance(as_flat_dict, list)) self.assertTrue(isinstance(as_flat_dict[0], dict)) # - - - - - - - - - - - - - - - - resource = GLOBAL_MEDIATOR.entities('security_group')[0] informer = aws_informer.AWSInformer(resource, mediator=GLOBAL_MEDIATOR) as_flat_dict = informer.to_dict(flat=True) self.assertTrue(isinstance(as_flat_dict, list)) self.assertTrue(isinstance(as_flat_dict[0], dict)) informer.expand() as_flat_dict = informer.to_dict(flat=True) self.assertTrue(isinstance(as_flat_dict, list)) self.assertTrue(isinstance(as_flat_dict[0], dict))
def test_aws_informer_init_errors(self): '''Test AWSInformer initialization errors.''' with self.assertRaises(TypeError): # Omitting all parameters. # pylint: disable=no-value-for-parameter aws_informer.AWSInformer() with self.assertRaises(TypeError): # Omitting resource. # pylint: disable=no-value-for-parameter aws_informer.AWSInformer(region_name='us-east-1') with self.assertRaises(TypeError): # pylint: disable=no-value-for-parameter aws_informer.AWSInformer(mediator=GLOBAL_MEDIATOR) with self.assertRaises(TypeError): # pylint: disable=no-value-for-parameter aws_informer.AWSInformer(region_name='us-east-1', mediator=GLOBAL_MEDIATOR) with self.assertRaises(aws_informer.AWSInformerRegionError): aws_informer.AWSInformer('_', region_name='us-west-1', mediator=GLOBAL_MEDIATOR)
def setUpClass(cls): '''Test class level common fixture.''' cls.elb_informer_0 = aws_informer.AWSInformer( GLOBAL_MEDIATOR.entities('elb')[0], mediator=GLOBAL_MEDIATOR) cls.elb_informer_1 = aws_informer.AWSInformer( GLOBAL_MEDIATOR.entities('elb')[-1], mediator=GLOBAL_MEDIATOR) cls.vpc_informer = aws_informer.AWSInformer( GLOBAL_MEDIATOR.entities('vpc')[0], mediator=GLOBAL_MEDIATOR)
def test_aws_informer_expand(self): '''Test expansion of aws informers.''' informer = aws_informer.AWSInformer(self.ec2_resource, mediator=GLOBAL_MEDIATOR) informer.expand() self.assertEqual(informer.expansions, {}) self.assertTrue(informer.is_expanded) self.assertEqual(type(informer.supplementals), dict) self.assertEqual(informer.supplementals.keys(), ['meta', 'site-specific'])
def test_aws_informer_init(self): '''Test initialization of aws informers.''' informer = aws_informer.AWSInformer(self.ec2_resource, mediator=GLOBAL_MEDIATOR) self.assertIsNotNone(informer) self.assertIsNotNone(informer.mediator) self.assertEqual(informer.expansions, {}) self.assertFalse(informer.is_expanded) self.assertIsNone(informer.entity_type) self.assertEqual(type(informer.supplementals), dict) self.assertEqual(informer.supplementals.keys(), ['meta', 'site-specific']) self.assertIsNotNone(informer.region_name) self.assertEqual(informer.region_name, GLOBAL_MEDIATOR.region_name)