Mercurial > repos > shellac > guppy_basecaller
diff env/lib/python3.7/site-packages/bioblend/_tests/TestCloudmanLaunch.py @ 0:26e78fe6e8c4 draft
"planemo upload commit c699937486c35866861690329de38ec1a5d9f783"
author | shellac |
---|---|
date | Sat, 02 May 2020 07:14:21 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/env/lib/python3.7/site-packages/bioblend/_tests/TestCloudmanLaunch.py Sat May 02 07:14:21 2020 -0400 @@ -0,0 +1,44 @@ +""" +Tests the functionality of the Blend CloudMan API. These tests require working +credentials to supported cloud infrastructure. +""" +from bioblend.cloudman import CloudManConfig, CloudManInstance +from . import CloudmanTestBase, test_util + + +@test_util.skip_unless_cloudman() +class TestCloudmanLaunch(CloudmanTestBase.CloudmanTestBase): + + def setUp(self): + super(TestCloudmanLaunch, self).setUp() + + def test_validate_valid_config(self): + """ + Tests whether a valid config is validated properly. + """ + # cfg = CloudManConfig(self.access_key, self.secret_key, self.cluster_name, self.ami_id, self.instance_type, self.password, cloud_metadata=self.cloud_metadata) + cls = TestCloudmanLaunch + cfg = CloudManConfig(cls.access_key, cls.secret_key, cls.cluster_name, cls.ami_id, cls.instance_type, cls.password, cloud_metadata=cls.cloud_metadata) + result = cfg.validate() + self.assertIsNone(result, "Validation did not return null to indicate success!") + + def test_validate_invalid_config(self): + """ + Tests whether an invalid config is validated properly. + """ + cfg = CloudManConfig() + result = cfg.validate() + self.assertIsNotNone(result, "Validation should have returned a value since the configuration was invalid!") + + def test_launch_and_terminate(self): + cls = TestCloudmanLaunch + cfg = CloudManConfig(cls.access_key, cls.secret_key, cls.cluster_name, cls.ami_id, cls.instance_type, cls.password, cloud_metadata=cls.cloud_metadata) + cmi = CloudManInstance.launch_instance(cfg) + status = cmi.get_status() + self.assertNotEqual(status['cluster_status'], 'ERROR', "instance.get_status() returned ERROR. Should return a successful status!") + try: + # TODO: The terminate method is unpredictable! Needs fix. + result = cmi.terminate(delete_cluster=True) + self.assertEqual(result['cluster_status'], 'SHUTDOWN', "Cluster should be in status SHUTDOWN after call to terminate!") + except Exception: + pass