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')
示例#2
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')
示例#3
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)
示例#4
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)
示例#5
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')
示例#6
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_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_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_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)
示例#10
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')
def test_work_order_specialcharacter_data_single_index_indata(setup_config):
    """Testing work order request with all
    special characters in index of indata """
    # input file name
    request = 'work_order_tests/input' \
              '/work_order_specialcharacter_data_single_index_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)
def test_work_order_indata_index1_data_different_hexlength(setup_config):
    """Testing work order request with indata
    index1 data with different hex length."""

    # input file name
    request = 'work_order_tests/input' \
              '/work_order_indata_index1_data_diff_len.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_diff_text_data_indata_echoClient(setup_config):
    """ Testing work order request with multiple data in
     indata using echo-result has workloadid. """

    # input file name
    request = 'work_order_tests/input' \
              '/work_order_diff_text_data_indata_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[: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_datahash_calculation(setup_config):
    """ Testing work order request by passing
    required parameters for dataHash calculation. """

    # input file name
    request = 'work_order_tests/input' \
              '/work_order_submit_datahash_calculation.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_encryptedDataEncryptionKey_null(setup_config):
    """Testing work order by passing
    encryptedDataEncryptionKey null in index of indata."""

    # input file name
    request = 'work_order_tests/input' \
              '/work_order_encryptedDataEncryptionKey_null.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)
示例#16
0
def test_work_order_workerEncryptionKey_special_character(setup_config):
    """ Testing work order request by submiting
    worker encryption key with special characters. """

    # input file name
    request = 'work_order_tests/input' \
              '/work_order_workerEncryptionKey_special_character.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)
示例#17
0
def test_work_order_four_get_result_same_workload(setup_config):
    """ Testing work order request by passing workorder four
    twice with alternate workload and get result. """

    # input file name
    request = 'work_order_tests/input' \
              '/work_order_heartdisease.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)

    request = 'work_order_tests/input' \
              '/work_order_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)
    assert (validate_response_code(work_order_get_result_response) is
            TestStep.SUCCESS.value)
    request = 'work_order_tests/input' \
              '/work_order_heartdisease.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)
    request = 'work_order_tests/input' \
              '/work_order_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)
    assert (validate_response_code(work_order_get_result_response) is
            TestStep.SUCCESS.value)

    logger.info('\t\t!!! Test completed !!!\n\n')