4 * Copyright (c) 2018 Samsung Electronics Co., Ltd.
6 * Licensed under the Apache License, Version 2.0 (the License);
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
20 #ifndef STORAGED__TEST_H__
21 #define STORAGED__TEST_H__
24 #include <libgdbus/dbus-system.h>
28 #include "storaged_common.h"
30 #ifdef ENABLE_TEST_DLOG
35 TEST_PRIORITY_NORMAL = 0,
40 enum test_priority priority;
42 void (*init) (void *data);
43 void (*exit) (void *data);
47 int (*unit) (int argc, char **argv);
50 enum test_ops_status {
51 TEST_OPS_STATUS_UNINIT,
52 TEST_OPS_STATUS_START,
57 void test_init(void *data);
58 void test_exit(void *data);
60 static inline int test_start(const struct test_ops *c)
68 static inline int test_stop(const struct test_ops *c)
76 static inline int test_get_status(const struct test_ops *c)
84 #define TEST_OPS_REGISTER(c) \
85 static void __CONSTRUCTOR__ module_init(void) \
89 static void __DESTRUCTOR__ module_exit(void) \
93 void add_test(const struct test_ops *c);
94 void remove_test(const struct test_ops *c);
95 const struct test_ops *find_test(const char *name);
96 void _R(const char *format, ...);