import demistomock as demisto import pytest from McAfee_DXL import * data_test_push_ip = ["-.-.-.-", "1.1.1"] valid_private_key = """-----BEGIN PRIVATE KEY----- This is a vaild Private Key -----END PRIVATE KEY-----""" valid_certificate = """-----BEGIN CERTIFICATE----- This is a valid Certificate -----END CERTIFICATE-----""" invalid_private_key = r"\private\key\path.key" invalid_certificate = """""-----BEGIN CERTIFICATE REQUEST----- This is a valid Certificate -----END CERTIFICATE REQUEST-----""" spaces_in_certificate = """ -----BEGIN CERTIFICATE----- This is a valid Certificate -----END CERTIFICATE----- """ @pytest.mark.parametrize(argnames="input_ip", argvalues=data_test_push_ip) def test_is_ip_valid(input_ip): assert not is_ip_valid(input_ip), f"argument ip {input_ip} is not a valid IP" def test_validate_certificate_format(mocker): # Invalid private Key valid_params = {"private_key": invalid_private_key, "cert_file": valid_certificate, "broker_ca_bundle": valid_certificate} mocker.patch.object(demisto, "params", return_value=valid_params) with pytest.raises(SystemExit): validate_certificates_format() # Invalid cert file valid_params = {"private_key": valid_private_key, "cert_file": invalid_certificate, "broker_ca_bundle": valid_certificate} mocker.patch.object(demisto, "params", return_value=valid_params) with pytest.raises(SystemExit): validate_certificates_format() # Invalid broker_ca_bundle valid_params = {"private_key": valid_private_key, "cert_file": valid_certificate, "broker_ca_bundle": invalid_certificate} mocker.patch.object(demisto, "params", return_value=valid_params) with pytest.raises(SystemExit): validate_certificates_format() # Everything is valid + spaces valid_params = {"private_key": valid_private_key, "cert_file": valid_certificate, "broker_ca_bundle": spaces_in_certificate} mocker.patch.object(demisto, "params", return_value=valid_params) validate_certificates_format()