Skip to content

Commit

Permalink
Add tests and diagnostics for dataset credential settings
Browse files Browse the repository at this point in the history
  • Loading branch information
BenGalewsky committed Dec 22, 2023
1 parent c6ac0cb commit cc69f29
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 7 deletions.
6 changes: 5 additions & 1 deletion aws/automate_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ def authorizer_callback(*args, **kwargs):

class AutomateManager:

def __init__(self, secrets: dict, is_test: bool = False):
def __init__(self, secrets: dict, is_test: bool):
# Globals needed for the authorizer_callback
global tokens, mdf_flow

Expand All @@ -49,10 +49,14 @@ def __init__(self, secrets: dict, is_test: bool = False):
self.datacite_username = secrets['DATACITE_USERNAME_PROD']
self.datacite_password = secrets['DATACITE_PASSWORD_PROD']
self.datacite_prefix = secrets['DATACITE_PREFIX_PROD']
print(f"Using PROD Datacite prefix {self.datacite_prefix}, username {self.datacite_username}")

else:
self.datacite_username = secrets['DATACITE_USERNAME_TEST']
self.datacite_password = secrets['DATACITE_PASSWORD_TEST']
self.datacite_prefix = secrets['DATACITE_PREFIX_TEST']
print(f"Using Test Datacite prefix {self.datacite_prefix}, username {self.datacite_username}")



self.portal_url = os.environ.get('PORTAL_URL', None)
Expand Down
20 changes: 14 additions & 6 deletions aws/tests/test_automate_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ def set_environ(self):
@mock.patch('globus_automate_flow.GlobusAutomateFlow', autospec=True)
def test_create_transfer_items(self, _, secrets, organization, set_environ):
os.environ['PORTAL_URL'] = "https://acdc.alcf.anl.gov/mdf/detail/"
manager = AutomateManager(secrets)
manager = AutomateManager(secrets, is_test=False)

data_sources = [
"https://app.globus.org/file-manager?destination_id=e38ee745-6d04-11e5-ba46-22000b92c6ec&destination_path=%2FMDF%2Fmdf_connect%2Ftest_files%2Fcanonical_datasets%2Fdft%2F"
Expand All @@ -102,7 +102,7 @@ def test_create_transfer_items(self, _, secrets, organization, set_environ):
@mock.patch('globus_automate_flow.GlobusAutomateFlow', autospec=True)
def test_create_transfer_items_from_origin(self, _, secrets, organization):
os.environ['PORTAL_URL'] = "https://acdc.alcf.anl.gov/mdf/detail/"
manager = AutomateManager(secrets)
manager = AutomateManager(secrets, is_test=False)

data_sources = [
"https://app.globus.org/file-manager?origin_id=e38ee745-6d04-11e5-ba46-22000b92c6ec&origin_path=%2Fexalearn-design%2F"
Expand All @@ -127,7 +127,7 @@ def test_create_transfer_items_from_google_drive(self, _, secrets, organization)
os.environ['PORTAL_URL'] = "https://acdc.alcf.anl.gov/mdf/detail/"
os.environ['GDRIVE_EP'] = "f00dfd6c-edf4-4c8b-a4b1-be6ad92a4fbb"
os.environ['GDRIVE_ROOT'] = "/Shared With Me"
manager = AutomateManager(secrets)
manager = AutomateManager(secrets, is_test=False)

data_sources = [
"google:///mdf/my_dataset"
Expand All @@ -150,7 +150,7 @@ def test_create_transfer_items_from_google_drive(self, _, secrets, organization)
@mock.patch('globus_automate_flow.GlobusAutomateFlow', autospec=True)
def test_create_transfer_items_test_submit(self, _, secrets, organization, set_environ):
os.environ['PORTAL_URL'] = "https://acdc.alcf.anl.gov/mdf/detail/"
manager = AutomateManager(secrets)
manager = AutomateManager(secrets, is_test=True)

data_sources = [
"https://app.globus.org/file-manager?destination_id=e38ee745-6d04-11e5-ba46-22000b92c6ec&destination_path=%2FMDF%2Fmdf_connect%2Ftest_files%2Fcanonical_datasets%2Fdft%2F"
Expand All @@ -176,7 +176,7 @@ def test_update_metadata_only(self, mock_automate, secrets, organization, mocker
mock_flow = mocker.Mock()
mock_automate.from_existing_flow = mocker.Mock(return_value=mock_flow)
os.environ['PORTAL_URL'] = "https://acdc.alcf.anl.gov/mdf/detail/"
manager = AutomateManager(secrets)
manager = AutomateManager(secrets, is_test=False)

data_sources = [
"https://app.globus.org/file-manager?destination_id=e38ee745-6d04-11e5-ba46-22000b92c6ec&destination_path=%2FMDF%2Fmdf_connect%2Ftest_files%2Fcanonical_datasets%2Fdft%2F"
Expand All @@ -200,7 +200,15 @@ def test_mint_doi(self, mock_automate, secrets, organization_mint_doi, mocker, m
mock_flow = mocker.Mock()
mock_automate.from_existing_flow = mocker.Mock(return_value=mock_flow)
os.environ['PORTAL_URL'] = "https://acdc.alcf.anl.gov/mdf/detail/"
manager = AutomateManager(secrets)
manager = AutomateManager(secrets, is_test=False)
assert manager.datacite_username == "datacite_prod_usrname_1234"
assert manager.datacite_password == "datacite_prod_passwrd_1234"
assert manager.datacite_prefix == "10.12345"

manager = AutomateManager(secrets, is_test=True)
assert manager.datacite_username == "datacite_test_usrname_1234"
assert manager.datacite_password == "datacite_test_passwrd_1234"
assert manager.datacite_prefix == "10.12347"

data_sources = [
"https://app.globus.org/file-manager?destination_id=e38ee745-6d04-11e5-ba46-22000b92c6ec&destination_path=%2FMDF%2Fmdf_connect%2Ftest_files%2Fcanonical_datasets%2Fdft%2F"
Expand Down

0 comments on commit cc69f29

Please sign in to comment.