William Duclot <[email protected]> writes:
> --- a/Makefile
> +++ b/Makefile
> @@ -613,6 +613,7 @@ TEST_PROGRAMS_NEED_X += test-scrap-cache-tree
> TEST_PROGRAMS_NEED_X += test-sha1
> TEST_PROGRAMS_NEED_X += test-sha1-array
> TEST_PROGRAMS_NEED_X += test-sigchain
> +TEST_PROGRAMS_NEED_X += test-strbuf
> TEST_PROGRAMS_NEED_X += test-string-list
> TEST_PROGRAMS_NEED_X += test-submodule-config
> TEST_PROGRAMS_NEED_X += test-subprocess
> diff --git a/t/helper/test-strbuf.c b/t/helper/test-strbuf.c
> new file mode 100644
> index 0000000..271592e
> --- /dev/null
> +++ b/t/helper/test-strbuf.c
> @@ -0,0 +1,101 @@
> +#include "git-compat-util.h"
> +#include "strbuf.h"
> +#include "parse-options.h"
> +#include "builtin.h"
> +
> +/*
> + * Check behavior on usual use cases
> + */
> +static int strbuf_check_behavior(struct strbuf *sb)
> +{
> + char *str_test = xstrdup("test"), *res, *old_buf;
> + size_t size, old_alloc;
> +
> + strbuf_grow(sb, 1);
> + old_alloc = sb->alloc;
> + strbuf_grow(sb, sb->alloc - sb->len + 1000);
> + if (old_alloc == sb->alloc)
> + die("strbuf_grow does not realloc the buffer as expected");
> + old_buf = sb->buf;
> + res = strbuf_detach(sb, &size);
> + if (res != old_buf)
> + die("strbuf_detach does not return the expected buffer");
> + free(res);
> +
> + str_test = xstrdup("test");
> + strbuf_attach(sb, str_test, strlen(str_test), strlen(str_test) + 1);
> + res = strbuf_detach(sb, &size);
> + if (size != strlen(str_test))
> + die ("size is not as expected");
Space before '('. Also, it's nice for the guy debugging that to say
"incorrect size. Expected %d, got %d" or so.
> diff --git a/t/t0082-strbuf.sh b/t/t0082-strbuf.sh
> new file mode 100755
> index 0000000..6a579a3
> --- /dev/null
> +++ b/t/t0082-strbuf.sh
> @@ -0,0 +1,19 @@
> +#!/bin/sh
> +
> +test_description='Test the strbuf API.'
The '.' is usually omitted.
--
Matthieu Moy
http://www-verimag.imag.fr/~moy/
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html