Esempio n. 1
0
 def test_client_supplied_invalid_security_group_identifier_raises_error(self):
     manager = EmrSecurityGroupManager(ec2_backend, self.vpc_id)
     args_bad = [
         ("sg-invalid", None, None),
         (None, "sg-invalid", None),
         (None, None, "sg-invalid"),
     ]
     for args in args_bad:
         with pytest.raises(ValueError) as exc:
             manager.manage_security_groups(*args)
         assert str(exc.value) == "The security group 'sg-invalid' does not exist"
Esempio n. 2
0
 def test_emr_security_groups_do_not_get_created_if_already_exist(self):
     manager = EmrSecurityGroupManager(ec2_backend, self.vpc_id)
     assert len(self._default_emr_security_groups()) == 0
     manager.manage_security_groups(None, None, None)
     emr_security_groups = self._default_emr_security_groups()
     assert len(emr_security_groups) == 3
     # Run again.  Group count should still be 3.
     emr_sg_ids_expected = [sg["GroupId"] for sg in emr_security_groups]
     manager.manage_security_groups(None, None, None)
     emr_security_groups = self._default_emr_security_groups()
     assert len(emr_security_groups) == 3
     emr_sg_ids_actual = [sg["GroupId"] for sg in emr_security_groups]
     assert emr_sg_ids_actual == emr_sg_ids_expected
Esempio n. 3
0
 def test_emr_security_groups_do_not_get_created_if_client_supplied(self):
     (
         client_master,
         client_slave,
         client_service,
     ) = self._create_default_client_supplied_security_groups()
     manager = EmrSecurityGroupManager(ec2_backend, self.vpc_id)
     manager.manage_security_groups(client_master.id, client_slave.id,
                                    client_service.id)
     client_group_names = [
         client_master.group_name,
         client_slave.group_name,
         client_service.group_name,
     ]
     assert len(self._describe_security_groups(client_group_names)) == 3
     assert len(self._default_emr_security_groups()) == 0
Esempio n. 4
0
 def test_client_supplied_security_groups_have_rules_added(self):
     (
         client_master,
         client_slave,
         client_service,
     ) = self._create_default_client_supplied_security_groups()
     manager = EmrSecurityGroupManager(ec2_backend, self.vpc_id)
     manager.manage_security_groups(client_master.id, client_slave.id,
                                    client_service.id)
     client_group_names = [
         client_master.group_name,
         client_slave.group_name,
         client_service.group_name,
     ]
     security_groups = self._describe_security_groups(client_group_names)
     for security_group in security_groups:
         assert len(security_group["IpPermissions"]) > 0
         assert len(security_group["IpPermissionsEgress"]) > 0
Esempio n. 5
0
 def test_emr_security_groups_get_created_if_non_existent(self):
     manager = EmrSecurityGroupManager(ec2_backend, self.vpc_id)
     assert len(self._default_emr_security_groups()) == 0
     manager.manage_security_groups(None, None, None)
     assert len(self._default_emr_security_groups()) == 3