Commit 8a7b034d authored by Tanay Abhra's avatar Tanay Abhra Committed by Junio C Hamano

add tests for `git_config_get_string_const()`

Add tests for `git_config_get_string_const()`, check whether it
dies printing the line number and the file name if a NULL
value is retrieved for the given key.
Signed-off-by: default avatarTanay Abhra <[email protected]>
Reviewed-by: default avatarMatthieu Moy <[email protected]>
Signed-off-by: default avatarJunio C Hamano <[email protected]>
parent 79e9ce21
...@@ -119,6 +119,16 @@ test_expect_success 'find integer value for a key' ' ...@@ -119,6 +119,16 @@ test_expect_success 'find integer value for a key' '
check_config get_int lamb.chop 65 check_config get_int lamb.chop 65
' '
test_expect_success 'find string value for a key' '
check_config get_string case.baz hask &&
check_config expect_code 1 get_string case.ba "Value not found for \"case.ba\""
'
test_expect_success 'check line error when NULL string is queried' '
test_expect_code 128 test-config get_string case.foo 2>result &&
test_i18ngrep "fatal: .*case\.foo.*\.git/config.*line 7" result
'
test_expect_success 'find integer if value is non parse-able' ' test_expect_success 'find integer if value is non parse-able' '
check_config expect_code 128 get_int lamb.head check_config expect_code 128 get_int lamb.head
' '
......
...@@ -16,6 +16,8 @@ ...@@ -16,6 +16,8 @@
* *
* get_bool -> print bool value for the entered key or die * get_bool -> print bool value for the entered key or die
* *
* get_string -> print string value for the entered key or die
*
* configset_get_value -> returns value with the highest priority for the entered key * configset_get_value -> returns value with the highest priority for the entered key
* from a config_set constructed from files entered as arguments. * from a config_set constructed from files entered as arguments.
* *
...@@ -84,6 +86,14 @@ int main(int argc, char **argv) ...@@ -84,6 +86,14 @@ int main(int argc, char **argv)
printf("Value not found for \"%s\"\n", argv[2]); printf("Value not found for \"%s\"\n", argv[2]);
goto exit1; goto exit1;
} }
} else if (argc == 3 && !strcmp(argv[1], "get_string")) {
if (!git_config_get_string_const(argv[2], &v)) {
printf("%s\n", v);
goto exit0;
} else {
printf("Value not found for \"%s\"\n", argv[2]);
goto exit1;
}
} else if (!strcmp(argv[1], "configset_get_value")) { } else if (!strcmp(argv[1], "configset_get_value")) {
for (i = 3; i < argc; i++) { for (i = 3; i < argc; i++) {
int err; int err;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment