Fix analytic ship (#6679)

REDHAT_USERNAME and REDHAT_PASSWORD are default to empty string instead of None
This commit is contained in:
Hao Liu 2024-09-10 03:46:53 -04:00 committed by GitHub
parent 059f52f314
commit ce0d176508
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 24 additions and 13 deletions

View File

@ -368,7 +368,7 @@ def ship(path):
rh_user = getattr(settings, 'REDHAT_USERNAME', None)
rh_password = getattr(settings, 'REDHAT_PASSWORD', None)
if rh_user is None or rh_password is None:
if not rh_user or not rh_password:
logger.info('REDHAT_USERNAME and REDHAT_PASSWORD are not set, using SUBSCRIPTIONS_USERNAME and SUBSCRIPTIONS_PASSWORD')
rh_user = getattr(settings, 'SUBSCRIPTIONS_USERNAME', None)
rh_password = getattr(settings, 'SUBSCRIPTIONS_PASSWORD', None)

View File

@ -82,18 +82,18 @@ def mock_analytic_post():
@pytest.mark.parametrize(
"setting_map, expected_result, expected_auth",
[
# Test case 1: Valid Red Hat credentials
# Valid Red Hat credentials
(
{
'REDHAT_USERNAME': 'redhat_user',
'REDHAT_PASSWORD': 'redhat_pass', # NOSONAR
'SUBSCRIPTIONS_USERNAME': None,
'SUBSCRIPTIONS_PASSWORD': None,
'SUBSCRIPTIONS_USERNAME': '',
'SUBSCRIPTIONS_PASSWORD': '',
},
True,
('redhat_user', 'redhat_pass'),
),
# Test case 2: Valid Subscription credentials
# Valid Subscription credentials with no Red Hat credentials
(
{
'REDHAT_USERNAME': None,
@ -104,24 +104,35 @@ def mock_analytic_post():
True,
('subs_user', 'subs_pass'),
),
# Test case 3: No credentials
# Valid Subscription credentials with empty Red Hat credentials
(
{
'REDHAT_USERNAME': None,
'REDHAT_PASSWORD': None,
'SUBSCRIPTIONS_USERNAME': None,
'SUBSCRIPTIONS_PASSWORD': None,
'REDHAT_USERNAME': '',
'REDHAT_PASSWORD': '',
'SUBSCRIPTIONS_USERNAME': 'subs_user',
'SUBSCRIPTIONS_PASSWORD': 'subs_pass', # NOSONAR
},
True,
('subs_user', 'subs_pass'),
),
# No credentials
(
{
'REDHAT_USERNAME': '',
'REDHAT_PASSWORD': '',
'SUBSCRIPTIONS_USERNAME': '',
'SUBSCRIPTIONS_PASSWORD': '',
},
False,
None, # No request should be made
),
# Test case 4: Mixed credentials
# Mixed credentials
(
{
'REDHAT_USERNAME': None,
'REDHAT_USERNAME': '',
'REDHAT_PASSWORD': 'redhat_pass', # NOSONAR
'SUBSCRIPTIONS_USERNAME': 'subs_user',
'SUBSCRIPTIONS_PASSWORD': None,
'SUBSCRIPTIONS_PASSWORD': '',
},
False,
None, # Invalid, no request should be made