def test_run_loggs_the_exception_if_it_fails_to_start_the_machine(self): err = self.mocker.replace("logging.error") err("500 - Failed") self.mocker.result(None) self.mocker.replay() instance = Instance(name="far_cry") client = Client() client._ec2_conn = mocks.FailingEC2Conn() client.run(instance) self.mocker.verify()
def test_run_returns_False_and_does_not_save_the_instance_in_the_database_if_it_fails_to_boot(self): instance = Instance(name="far_cry") client = Client() client._ec2_conn = mocks.FailingEC2Conn() ran = client.run(instance) self.assertFalse(ran) self.assertIsNone(instance.ec2_id)
def test_run_creates_instance_with_data_from_settings_without_saving_it_in_the_database(self): instance = Instance(name="professor_xavier") client = Client() client._ec2_conn = mocks.FakeEC2Conn() ran = client.run(instance) self.assertTrue(ran) self.assertEqual("i-00000302", instance.ec2_id) self.assertFalse(instance.saved)
def test_terminate_returns_false_when_cannot_remove_ec2_instance(self): instance = Instance(name="professor_xavier") client = Client() client._ec2_conn = mocks.FakeEC2Conn() ran = client.run(instance) self.assertTrue(ran) client._ec2_conn = mocks.FailingEC2Conn() ran = client.terminate(instance) self.assertFalse(ran)
def test_terminate_removes_ec2_instance(self): instance = Instance(name="professor_xavier") client = Client() client._ec2_conn = mocks.FakeEC2Conn() ran = client.run(instance) self.assertTrue(ran) ran = client.terminate(instance) self.assertEqual(["i-00000302"], client._ec2_conn.terminated) self.assertTrue(ran)