예제 #1
0
 def test_authorize_should_log_exceptions_from_ec2_conn(self):
     def fail_to_authorize(*args, **kwargs):
         raise EC2ResponseError(status=500, reason="I've failed, my friend")
     err = self.mocker.replace("logging.error")
     err("500 - I've failed, my friend")
     self.mocker.result(None)
     self.mocker.replay()
     instance = Instance(name="semblance_of_liberty", ec2_id="i-022")
     client = Client()
     client._ec2_conn = mocks.FakeEC2Conn()
     client._ec2_conn.authorize_security_group = fail_to_authorize
     client.authorize(instance)
     self.mocker.verify()
예제 #2
0
 def test_authorize_should_return_False_when_ec2_conn_raises_exception(self):
     def fail_to_authorize(*args, **kwargs):
         raise EC2ResponseError(status=500, reason="I've failed, my friend")
     instance = Instance(name="semblance_of_liberty", ec2_id="i-022")
     client = Client()
     client._ec2_conn = mocks.FakeEC2Conn()
     client._ec2_conn.authorize_security_group = fail_to_authorize
     authorized = client.authorize(instance)
     self.assertFalse(authorized)
예제 #3
0
 def test_authorize_should_use_ec2_conn_to_authorize_access_to_the_instance(self):
     fake = mocks.FakeEC2Conn()
     instance = Instance(name="tides_of_time", ec2_id="i-021")
     client = Client()
     client._ec2_conn = fake
     authorized = client.authorize(instance)
     self.assertTrue(authorized)
     authorization_string = "cidr_ip=%s/32 from_port=%s group_name=default ip_protocol=tcp to_port=%s" % (
         instance.host,
         instance.port,
         instance.port,
     )
     self.assertIn(authorization_string, fake.authorizations)
예제 #4
0
 def test_authorize_should_return_False_if_it_fails_to_authorize(self):
     instance = Instance(name="semblance_of_liberty", ec2_id="i-022")
     client = Client()
     client._ec2_conn = mocks.FailingEC2Conn()
     authorized = client.authorize(instance)
     self.assertFalse(authorized)