Commit c5b456b4 authored by Junio C Hamano's avatar Junio C Hamano

Merge branch 'js/test-tool-gen-nuls'

* js/test-tool-gen-nuls:
  tests: teach the test-tool to generate NUL bytes and use it
parents 2c804ffe d5cfd142
......@@ -740,6 +740,7 @@ TEST_BUILTINS_OBJS += test-dump-split-index.o
TEST_BUILTINS_OBJS += test-dump-untracked-cache.o
TEST_BUILTINS_OBJS += test-example-decorate.o
TEST_BUILTINS_OBJS += test-genrandom.o
TEST_BUILTINS_OBJS += test-genzeros.o
TEST_BUILTINS_OBJS += test-hash.o
TEST_BUILTINS_OBJS += test-hashmap.o
TEST_BUILTINS_OBJS += test-hash-speed.o
......
#include "test-tool.h"
#include "git-compat-util.h"
int cmd__genzeros(int argc, const char **argv)
{
long count;
if (argc > 2) {
fprintf(stderr, "usage: %s [<count>]\n", argv[0]);
return 1;
}
count = argc > 1 ? strtol(argv[1], NULL, 0) : -1L;
while (count < 0 || count--) {
if (putchar(0) == EOF)
return -1;
}
return 0;
}
......@@ -19,6 +19,7 @@ static struct test_cmd cmds[] = {
{ "dump-untracked-cache", cmd__dump_untracked_cache },
{ "example-decorate", cmd__example_decorate },
{ "genrandom", cmd__genrandom },
{ "genzeros", cmd__genzeros },
{ "hashmap", cmd__hashmap },
{ "hash-speed", cmd__hash_speed },
{ "index-version", cmd__index_version },
......
......@@ -16,6 +16,7 @@ int cmd__dump_split_index(int argc, const char **argv);
int cmd__dump_untracked_cache(int argc, const char **argv);
int cmd__example_decorate(int argc, const char **argv);
int cmd__genrandom(int argc, const char **argv);
int cmd__genzeros(int argc, const char **argv);
int cmd__hashmap(int argc, const char **argv);
int cmd__hash_speed(int argc, const char **argv);
int cmd__index_version(int argc, const char **argv);
......
......@@ -120,13 +120,7 @@ remove_cr () {
# If $1 is 'infinity', output forever or until the receiving pipe stops reading,
# whichever comes first.
generate_zero_bytes () {
perl -e 'if ($ARGV[0] == "infinity") {
while (-1) {
print "\0"
}
} else {
print "\0" x $ARGV[0]
}' "$@"
test-tool genzeros "$@"
}
# In some bourne shell implementations, the "unset" builtin returns
......
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