def test_work_order_with_alternate_worker_signing_algorithm(setup_config): """ Testing work order request by submiting alternate signing algorithm. """ # input file name request = 'work_order_tests/input' \ '/work_order_with_alternate_worker_signing_algorithm.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) setup_config[0].signingAlgorithm = "RSA-OAEP-3072" assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_verify_signature(setup_config): """ Testing postive flow with verify signature. """ # input file name request = 'work_order_tests/input/work_order_verify_signature.json' work_order_response, generic_params = work_order_request_params( setup_config, request) err_cd, work_order_get_result_response = work_order_get_result_params( work_order_response[:2], generic_params) assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_two_workloadid_echoclient(setup_config): """ Testing work order request by passing heart workloadid and echoclient workload in one workorder. """ # input file name request = 'work_order_tests/input' \ '/work_order_two_workloadid_echoclient.json' work_order_response, generic_params = work_order_request_params( setup_config, request) err_cd, work_order_get_result_response = work_order_get_result_params( work_order_response[:2], generic_params) assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_dataEncryptionAlgorithm_list_same_algo_twice(setup_config): """ Testing work order request by passing twice same data encryption algorithm. """ # input file name request = 'work_order_tests/input' \ '/work_order_dataEncryptionAlgorithm_list_same_algo_twice.json' work_order_response, generic_params = work_order_request_params( setup_config, request) err_cd, work_order_get_result_response = work_order_get_result_params( work_order_response[:2], generic_params) assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_with_empty_data_and_datahash_in_indata(setup_config): """.""" # input file name request = 'work_order_tests/input' \ '/work_order_with_empty_data_and_datahash_in_indata.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # assert (verify_work_order_signature(work_order_get_result_response, # generic_params[0]) # is TestStep.SUCCESS.value) # assert (decrypt_work_order_response(work_order_get_result_response, # work_order_response[3], # work_order_response[4])[0] # is TestStep.SUCCESS.value) # WorkOrderGetResult API Response validation with key parameters # assert (validate_response_code(work_order_get_result_response) is # TestStep.SUCCESS.value) if err_cd == TestStep.SUCCESS.value: logger.info('Test Work Order proceeded successfully ') else: logger.info('WorkOrderGetResult response has received ' 'expected result for passing empty ' 'indata')
def test_work_order_both_in_out_Data_DataEncryptionKey_null_echo(setup_config): """ Testing work order request by passing null in encrypteddataencryption in indata or both in indata and outdata. """ # input file name request = 'work_order_tests/input' \ '/work_order_both_in_out_Data_EncryptionKey_null_echo.json' work_order_response, generic_params = work_order_request_params( setup_config, request) err_cd, work_order_get_result_response = work_order_get_result_params( work_order_response[:2], generic_params) assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_without_requester_private_key(setup_config): """ Testing work order request by submiting without requester private key. """ # input file name request = 'work_order_tests/input' \ '/work_order_without_requester_private_key.json' private_key = "" work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_datahash_random_str(setup_config): """ Testing work order request by passing random string in datahash""" # input file name request = 'work_order_tests/input/work_order_datahash_random_str.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:2], generic_params)) assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_with_empty_indata(setup_config): """testing work order request by passing invalid dataEncryption algorithm .""" # input file name request = 'work_order_tests/input/work_order_with_empty_indata.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:2], generic_params)) assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_submit_requesterId_param_remove(setup_config): """ Testing work order request without requesterId. """ # input file name request = 'work_order_tests/input' \ '/work_order_submit_requesterId_param_remove.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_workloadId_specialcharacters(setup_config): """ Test work order request with wrong workload id """ # input file name request = 'work_order_tests/input' \ '/work_order_workloadId_specialcharacters.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_with_not_supported_dataencryption_algorithm(setup_config): """ Test work order request with unsupported dataencryption algorithm """ # input file name request = 'work_order_tests/input' \ '/work_order_with_not_supported_dataEncryption_algorithm.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_signature_with_wrong_payload_format(setup_config): """ Testing work order request by passing wrong payload format. """ # input file name request = 'work_order_tests/input' \ '/work_order_signature_with_wrong_payload_format.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_signing_wrong(setup_config): """ Testing work order with wrong signature. """ # input file name request = 'work_order_tests/input' \ '/work_order_signing_wrong.json' tamper = {"params": {"after_sign": {"requesterSignature": "hs"}}} work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_submit_requesterId_som_special_characters(setup_config): """ Testing work order request for requester Id with special_characters. """ # input file name request = 'work_order_tests/input' \ '/work_order_requesterId_special_characters.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_submit_workload_id_random_string(setup_config): """ Test work order request with wrong workload id """ # input file name request = 'work_order_tests/input' \ '/work_order_submit_workload_id_random_string.json' tamper = {"params": {"before_sign": {"workloadId": ""}}} work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_with_empty_indata_outdata(setup_config): """ Testing work order request by passing empty indata and outdata. """ # input file name request = 'work_order_tests/input' \ '/work_order_with_empty_indata_outdata.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_remove_payload_format_echoclient(setup_config): """ Testing work order request by removal of payload format. """ # input file name request = 'work_order_tests/input' \ '/work_order_remove_payload_format_echoclient.json' work_order_response, generic_params = work_order_request_params( setup_config, request) err_cd, work_order_get_result_response = work_order_get_result_params( work_order_response[:2], generic_params) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_with_empty_dataEncryption_algorithm(setup_config): """ Testing work order request by passing empty dataencryption algorithm. """ # input file name request = 'work_order_tests/input' \ '/work_order_with_empty_dataEncryption_algorithm.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_with_wrong_private_key(setup_config): """ Testing work order request by passing wrong private key. """ # input file name request = 'work_order_tests/input' \ '/work_order_with_wrong_private_key.json' private_key = "BA12" work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_empty_workloadid(setup_config): """ Testing work order request by passing empty workloadid. """ # input file name request = 'work_order_tests/input' \ '/work_order_only_workloadid.json' work_order_response, generic_params = work_order_request_params( setup_config, request) err_cd, work_order_get_result_response = work_order_get_result_params( work_order_response[:2], generic_params) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_with_no_indata(setup_config): """ Testing work order request with no indata """ # input file name request = 'work_order_tests/input/work_order_with_no_indata.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value)
def test_work_order_submit_WorkOrderId_null(setup_config): """ Testing work order request by passing empty indata and outdata. """ # input file name request = 'work_order_tests/input' \ '/work_order_submit_WorkOrderId_null.json' tamper = {"params": {"after_sign": {"workOrderId": ""}}} work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_not_supported_data_encryption_algorithm_echo(setup_config): """ Testing work order request by passing invalid indata. """ # input file name request = 'work_order_tests/input' \ '/work_order_non_supported_dataalgorithm_echoclient.json' work_order_response, generic_params = work_order_request_params( setup_config, request) err_cd, work_order_get_result_response = work_order_get_result_params( work_order_response[:2], generic_params) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_encryptedDataEncryptionKey_hyphen(setup_config): """ Testing work order by passing encryptedDataEncryptionKey hyphen in index of indata. """ # input file name request = 'work_order_tests/input' \ '/work_order_encryptedDataEncryptionKey_hyphen.json' work_order_response, generic_params = work_order_request_params( setup_config, request) err_cd, work_order_get_result_response = work_order_get_result_params( work_order_response[:2], generic_params) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')
def test_work_order_with_alternate_dataEncryption_algorithm(setup_config): """testing work order request by passing invalid dataEncryption algorithm .""" # input file name request = 'work_order_tests/input' \ '/work_order_with_alternate_dataEncryption_algorithm.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) check_get_result = {"error": {"code": 2}} if err_cd == TestStep.SUCCESS.value: logger.info('Test Work Order proceeded successfully ') else: logger.info('WorkOrderGetResult response has received ' 'expected result for passing alternate ' 'data algorithm')
def test_work_order_inData_DataEncryptionKey_hyphen_echo(setup_config): """ Testing work order request by passing hyphen \ in encrypteddataencryption in indata """ # input file name request = 'work_order_tests/' \ 'input/work_order_inData_DataEncryptionKey_hyphen_echo.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) if err_cd == 0: logger.info('Test Case Success:Work Order Processed successfully ' 'without decryption as we are passing hyphen in ' 'encryptedDataEncryptionKey in inData ') else: logger.info('Test Case Failed : Work Order Not Processed successfully' ' with Signature Verification and Decrypted Response') assert err_cd == 0
def test_work_order_with_empty_indata_hash(setup_config): """Testing work order request with empty indata hash""" # input file name request = 'work_order_tests/input/work_order_with_empty_indata_hash.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_submit_sessionkeyiv_and_iv_indata_hex_string(setup_config): """ Testing work order request by setting requesterId as null. """ # input file name request = 'work_order_tests/input/work_order_iv_indata_hex_string.json' work_order_response, generic_params = (work_order_request_params( setup_config, request)) err_cd, work_order_get_result_response = (work_order_get_result_params( work_order_response[:6], generic_params)) assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value) # WorkOrderGetResult API Response validation with key parameters assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value)
def test_work_order_multiple_dataEncryptionAlgorithm(setup_config): """ Testing work order request by passing multiple data encryption algorithm. """ request = 'work_order_tests/input' \ '/work_order_multiple_dataEncryptionAlgorithm.json' work_order_response, generic_params = work_order_request_params( setup_config, request) err_cd, work_order_get_result_response = work_order_get_result_params( work_order_response[:2], generic_params) assert (verify_work_order_signature(work_order_get_result_response, generic_params[0]) is TestStep.SUCCESS.value) assert (decrypt_work_order_response( work_order_get_result_response, work_order_response[3], work_order_response[4])[0] is TestStep.SUCCESS.value) assert (validate_response_code(work_order_get_result_response) is TestStep.SUCCESS.value) logger.info('\t\t!!! Test completed !!!\n\n')