[PATCH v2 6/6] Add tests for `git_config_get_string()`
From: Tanay Abhra <hidden>
Date: 2016-06-15 23:02:02
Subsystem:
the rest · Maintainer:
Linus Torvalds
Add tests for `git_config_get_string()`, 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: Tanay Abhra <redacted> --- t/t1308-config-set.sh | 9 +++++++++ test-config.c | 10 ++++++++++ 2 files changed, 19 insertions(+)
diff --git a/t/t1308-config-set.sh b/t/t1308-config-set.sh
index 35c6ee2..d7cdc6e 100755
--- a/t/t1308-config-set.sh
+++ b/t/t1308-config-set.sh@@ -119,6 +119,15 @@ test_expect_success 'find integer value for a key' ' check_config get_int lamb.chop 65 ' +test_expect_success 'find string value for a key' ' + check_config get_string case.baz hask +' + +test_expect_success 'check line error when NULL string is queried' ' + test_expect_code 128 test-config get_string case.foo 2>result && + grep "fatal: bad config file line 7 in .git/config" result +' + test_expect_success 'find integer if value is non parse-able' ' check_config expect_code 128 get_int lamb.head '
diff --git a/test-config.c b/test-config.c
index 9dd1b22..6a77552 100644
--- a/test-config.c
+++ b/test-config.c@@ -16,6 +16,8 @@ * * 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 * from a config_set constructed from files entered as arguments. *
@@ -84,6 +86,14 @@ int main(int argc, char **argv) printf("Value not found for \"%s\"\n", argv[2]); 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")) { for (i = 3; i < argc; i++) { int err;
--
1.9.0.GIT