diff options
Diffstat (limited to 'tests/odb/registration.c')
-rw-r--r-- | tests/odb/registration.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/odb/registration.c b/tests/odb/registration.c new file mode 100644 index 000000000..c17cef45a --- /dev/null +++ b/tests/odb/registration.c @@ -0,0 +1,27 @@ +#include "clar_libgit2.h" +#include "backends.h" + +int payload_target; + +int odb_ctor(void *payload) +{ + GIT_UNUSED(payload); + + return 0; +} + +void test_odb_registration__register(void) +{ + git_odb_registration *reg; + + cl_git_pass(git_odb_backend_register("foo", odb_ctor, &payload_target)); + reg = git_odb_backend__find("foo"); + + cl_assert(reg); + cl_assert_equal_s("foo", reg->name); + cl_assert_equal_p(odb_ctor, reg->ctor); + cl_assert_equal_p(&payload_target, reg->payload); + + reg = git_odb_backend__find("bar"); + cl_assert_equal_p(NULL, reg); +} |