_fails) {     //Arrange     CGatewayMocks mocks;      STRICT_EXPECTED_CALL(mocks, ModuleLoader_Initialize());      STRICT_EXPECTED_CALL(mocks, ModuleLoader_Destroy());     STRICT_EXPECTED_CALL(mocks, json_parse_file(DUMMY_JSON_PATH));     STRICT_EXPECTED_CALL(mocks, json_value_free(IGNORED_PTR_ARG))         .IgnoreArgument(0);     STRICT_EXPECTED_CALL(mocks, gballoc_malloc(sizeof(GATEWAY_PROPERTIES)));     STRICT_EXPECTED_CALL(mocks, gballoc_free(IGNORED_PTR_ARG))         .IgnoreArgument(0);     STRICT_EXPECTED_CALL(mocks, json_value_get_object(IGNORED_PTR_ARG))         .IgnoreArgument(0);     STRICT_EXPECTED_CALL(mocks, json_object_get_value(IGNORED_PTR_ARG, "loaders"))         .IgnoreArgument(0);     STRICT_EXPECTED_CALL(mocks, ModuleLoader_InitializeFromJson(IGNORED_PTR_ARG))         .IgnoreArgument(0)         .SetFailReturn(MODULE_LOADER_ERROR);      //Act     GATEWAY_HANDLE gateway = Gateway_CreateFromJson(DUMMY_JSON_PATH);      //Assert     ASSERT_IS_NULL(gateway);     mocks.AssertActualAndExpectedCalls(); }  /*Tests_SRS_GATEWAY_JSON_00_000: [ This function shall return NULL upon any memory allocation failure. ]*/ TEST_FUNCTION(Gateway_CreateFromJson_Returns_NULL_