Exemple #1
0
    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)
Exemple #2
0
    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()
Exemple #3
0
    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
Exemple #4
0
    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
Exemple #5
0
    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
Exemple #6
0
    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)
Exemple #7
0
    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)