From: Ismo Puustinen Date: Thu, 30 Oct 2014 08:30:26 +0000 (+0200) Subject: resource-c: added test app for trying context creations. X-Git-Tag: v0.0.63~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f3a677612dccfc40a011915f6e31a25f8d2ad9e4;p=profile%2Fivi%2Fmurphy.git resource-c: added test app for trying context creations. --- diff --git a/src/Makefile.am b/src/Makefile.am index f392418..8a0326f 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1072,6 +1072,13 @@ resource_api_fuzz_SOURCES = plugins/resource-native/libmurphy-resource/resource- resource_api_fuzz_CFLAGS = $(AM_CFLAGS) resource_api_fuzz_LDADD = libmurphy-common.la libmurphy-resource.la +# context-create +bin_PROGRAMS += resource-context-create + +resource_context_create_SOURCES = plugins/resource-native/libmurphy-resource/context-create.c +resource_context_create_CFLAGS = $(AM_CFLAGS) +resource_context_create_LDADD = libmurphy-common.la libmurphy-resource.la + ################################### # murphy plugins # diff --git a/src/plugins/resource-native/libmurphy-resource/context-create.c b/src/plugins/resource-native/libmurphy-resource/context-create.c new file mode 100644 index 0000000..eb94836 --- /dev/null +++ b/src/plugins/resource-native/libmurphy-resource/context-create.c @@ -0,0 +1,87 @@ +/* + * Copyright (c) 2014, Intel Corporation + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Intel Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include + +#include + +mrp_mainloop_t *ml; + +void state_cb(mrp_res_context_t *cx, mrp_res_error_t err, void *userdata) +{ + MRP_UNUSED(cx); + MRP_UNUSED(err); + MRP_UNUSED(userdata); +} + +void deferred_cb(mrp_deferred_t *d, void *user_data) +{ + uint *iterations = user_data; + + (*iterations)--; + + if (*iterations == 0) { + mrp_del_deferred(d); + mrp_mainloop_quit(ml, 0); + return; + } + + mrp_res_context_t *ctx = mrp_res_create(ml, state_cb, NULL); + mrp_res_destroy(ctx); +} + +void usage() +{ + printf("context-create \n"); +} + +int main(int argc, char **argv) +{ + uint iterations = 0; + + if (argc != 2) { + usage(); + exit(1); + } + + if ((ml = mrp_mainloop_create()) == NULL) + exit(1); + + iterations = strtoul(argv[1], NULL, 10); + + mrp_add_deferred(ml, deferred_cb, &iterations); + + /* start looping */ + mrp_mainloop_run(ml); + + return 0; +}