def __init__(self, gridset_id, user_id, passwd, server, wait_timeout, delay_time=0, delay_interval=120): """Construct the instance. Args: gridset_id (int): The identifier of the gridset to request. user_id (str): The Lifemapper username to perform this test. passwd (str): The password of the specified Lifemapper test user. server (str): The base Lifemapper server URL to test against. wait_timeout (int): The number of seconds to wait for a job to complete before failing. delay_time (int): The number of seconds to wait before running the test. delay_interval (int): The number of seconds to wait between test runs. """ test_base.LmTest.__init__(self, delay_time=delay_time) self.user_id = user_id self.passwd = passwd self.server = server self.gridset_id = gridset_id self.wait_timeout = wait_timeout self.test_name = 'Waiting test for gridset id: {}'.format( self.gridset_id) self.delay_interval = delay_interval self.client = LmApiClient(server=server)
def get_client(self): """Get a client. Yields: LmApiClient: A Lifemapper client library instance. """ cl = LmApiClient() if self.user is not None and self.passwd is not None: cl.auth.login(self.user, self.passwd) yield cl cl.auth.logout()
def test_tree_upload_valid(self, data_files): """Test uploading valid tree data. Args: data_files (SampleDataFiles): Class used to get data files. """ tree_filename = data_files.get_tree_uploads() assert os.path.exists(tree_filename) cl = LmApiClient() response = cl.upload.tree( tree_filename, 'test_tree_{}'.format(random.randint(0, 10000))) print(response) assert response
def test_biogeographic_hypotheses_upload_valid(self, data_files): """Test uploading valid biogeographic hypotheses. Args: data_files (SampleDataFiles): Class used to get data files. """ bg_filename = data_files.get_bg_uploads() assert os.path.exists(bg_filename) cl = LmApiClient() response = cl.upload.biogeographic_hypotheses( bg_filename, 'test_hypotheses_{}'.format(random.randint(0, 10000))) print(response) assert response
def test_occurrence_upload_valid(self, data_files): """Test uploading valid occurrence data. Args: data_files (SampleDataFiles): Class used to get data files. """ csv_filename, meta_filename = data_files.get_occ_uploads() assert os.path.exists(csv_filename) assert os.path.exists(meta_filename) cl = LmApiClient() with open(meta_filename) as meta_in: metadata = json.dumps(json.load(meta_in)) response = cl.upload.occurrence( csv_filename, metadata, 'test_{}'.format(random.randint(0, 10000))) print(response) assert response
def __init__( self, user_id, passwd, server, config, wait_timeout, delay_time=0, delay_interval=3600, ): """Construct the simulated submission test. Args: user_id (str): The Lifemapper username to perform this test. passwd (str): The password of the specified Lifemapper test user. server (str): The base Lifemapper server URL to test against. config (dict): A dictionary of job submission parameters. wait_timeout (int): The number of seconds to wait for a job to complete before failing. delay_time (int): The number of seconds to wait before running the test. delay_interval (int): The number of seconds to wait between test runs. """ test_base.LmTest.__init__(self, delay_time=delay_time) self.wait_timeout = wait_timeout self.user_id = user_id self.passwd = passwd self.server = server self.boom_config = config # Create a random value used for filenames rand_val = randint(0, 99999) self._replace_lookup = { 'TEST_USER': user_id, 'ARCHIVE_NAME': 'Auto_test-{}'.format(rand_val), 'OCCURRENCE_FILENAME': 'Auto_test_occ-{}'.format(rand_val), } self.test_name = 'lmclient SDM BOOM Job test (user: {}, archive: {})'.format( user_id, self._replace_lookup['ARCHIVE_NAME']) self.client = LmApiClient(server=server)
def __init__(self, gridset_id, user_id, passwd, server, delay_time=0, delay_interval=60): """Construct the instance. Args: gridset_id (int): The identifier of the gridset to request. user_id (str): The Lifemapper username to perform this test. passwd (str): The password of the specified Lifemapper test user. server (str): The base Lifemapper server URL to test against. delay_time (int): The number of seconds to wait before running the test. delay_interval (int): The number of seconds to wait between test runs. """ test_base.LmTest.__init__(self, delay_time=delay_time) self.user_id = user_id self.passwd = passwd self.server = server self.gridset_id = gridset_id self.test_name = 'Gridset {} validation test'.format(self.gridset_id) self.client = LmApiClient(server=server)