Commit b57ce180 authored by Job Vranish's avatar Job Vranish
Browse files

fixed p2p op so that it will still call its callback if there is an error building the operation

parent 295145a6
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -36,12 +36,8 @@
:defines:
  :commmon: &common_defines
    - TEST
    # - SYSTEM_TEST_HOST=\"<%= ENV.fetch('SYSTEM_TEST_HOST', 'localhost') %>\"
  :test:
    - *common_defines
    # - SYSTEM_TEST_HOST="\"10.138.123.171\""
    # - SYSTEM_TEST_HOST="\"localhost\""
    # - SYSTEM_TEST_HOST2="\"10.138.123.122\""
  :test_preprocess:
    - *common_defines

+8 −2
Original line number Diff line number Diff line
@@ -287,8 +287,14 @@ KineticStatus KineticClient_P2POperation(KineticSession const * const session,

    // Initialize request
    KineticStatus status = KineticOperation_BuildP2POperation(operation, p2pOp);
    if (status != KINETIC_STATUS_SUCCESS) {return status; }
    // TODO I probably need to call the callback here?
    if (status != KINETIC_STATUS_SUCCESS) {
        // TODO we need to find a more generic way to handle errors on command construction
        if (closure != NULL) {
            operation->closure = *closure;
        }
        KineticOperation_Complete(operation, status);
        return status;
    }

    // Execute the operation
    return KineticController_ExecuteOperation(operation, closure);
+1 −1
Original line number Diff line number Diff line
@@ -718,7 +718,7 @@ void KineticOperation_Complete(KineticOperation* operation, KineticStatus status
{
    assert(operation != NULL);
    // ExecuteOperation should ensure a callback exists (either a user supplied one, or the a default)
    assert(operation->closure.callback != NULL);
    if (operation->closure.callback == NULL) { return; }
    KineticCompletionData completionData = {.status = status};
    operation->closure.callback(&completionData, operation->closure.clientData);    

+1 −1
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@ uint8_t data[KINETIC_OBJ_SIZE];

void SystemTestSetup(SystemTestFixture* fixture)
{
    KineticClient_Init("stdout", 3);
    KineticClient_Init("stdout", 2);

    TEST_ASSERT_NOT_NULL_MESSAGE(fixture, "System test fixture is NULL!");

+1 −1
Original line number Diff line number Diff line
@@ -95,7 +95,7 @@ void test_kinetic_client_should_store_a_binary_object_split_across_entries_via_o
            .hmacKey = ByteArray_CreateWithCString(HmacKeyString),
        },
    };
    KineticClient_Init("stdout", 3);
    KineticClient_Init("stdout", 0);

    // Establish connection
    KineticStatus status = KineticClient_CreateConnection(&session);