Пример #1
0
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')
Пример #3
0
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')
Пример #4
0
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')
Пример #6
0
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)
Пример #7
0
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)
Пример #10
0
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)
Пример #11
0
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)
Пример #12
0
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)
Пример #13
0
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)
Пример #14
0
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')
Пример #15
0
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')
Пример #16
0
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)
Пример #17
0
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)
Пример #18
0
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')
Пример #19
0
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')
Пример #20
0
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')
Пример #21
0
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)
Пример #23
0
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')
Пример #24
0
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)
Пример #30
0
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')