]>
git.proxmox.com Git - libgit2.git/blob - tests/core/opts.c
1 #include "clar_libgit2.h"
4 void test_core_opts__cleanup(void)
6 cl_git_pass(git_libgit2_opts(GIT_OPT_SET_EXTENSIONS
, NULL
, 0));
9 void test_core_opts__readwrite(void)
14 git_libgit2_opts(GIT_OPT_GET_MWINDOW_SIZE
, &old_val
);
15 git_libgit2_opts(GIT_OPT_SET_MWINDOW_SIZE
, (size_t)1234);
16 git_libgit2_opts(GIT_OPT_GET_MWINDOW_SIZE
, &new_val
);
18 cl_assert(new_val
== 1234);
20 git_libgit2_opts(GIT_OPT_SET_MWINDOW_SIZE
, old_val
);
21 git_libgit2_opts(GIT_OPT_GET_MWINDOW_SIZE
, &new_val
);
23 cl_assert(new_val
== old_val
);
26 void test_core_opts__invalid_option(void)
28 cl_git_fail(git_libgit2_opts(-1, "foobar"));
31 void test_core_opts__extensions_query(void)
33 git_strarray out
= { 0 };
35 cl_git_pass(git_libgit2_opts(GIT_OPT_GET_EXTENSIONS
, &out
));
37 cl_assert_equal_sz(out
.count
, 1);
38 cl_assert_equal_s("noop", out
.strings
[0]);
40 git_strarray_dispose(&out
);
43 void test_core_opts__extensions_add(void)
45 const char *in
[] = { "foo" };
46 git_strarray out
= { 0 };
48 cl_git_pass(git_libgit2_opts(GIT_OPT_SET_EXTENSIONS
, in
, ARRAY_SIZE(in
)));
49 cl_git_pass(git_libgit2_opts(GIT_OPT_GET_EXTENSIONS
, &out
));
51 cl_assert_equal_sz(out
.count
, 2);
52 cl_assert_equal_s("noop", out
.strings
[0]);
53 cl_assert_equal_s("foo", out
.strings
[1]);
55 git_strarray_dispose(&out
);
58 void test_core_opts__extensions_remove(void)
60 const char *in
[] = { "bar", "!negate", "!noop", "baz" };
61 git_strarray out
= { 0 };
63 cl_git_pass(git_libgit2_opts(GIT_OPT_SET_EXTENSIONS
, in
, ARRAY_SIZE(in
)));
64 cl_git_pass(git_libgit2_opts(GIT_OPT_GET_EXTENSIONS
, &out
));
66 cl_assert_equal_sz(out
.count
, 2);
67 cl_assert_equal_s("bar", out
.strings
[0]);
68 cl_assert_equal_s("baz", out
.strings
[1]);
70 git_strarray_dispose(&out
);