cd666467bcf8b60156c95e0a333b1a84ace94e15 galt Thu Apr 20 14:02:32 2017 -0700 little fixes diff --git src/lib/tests/gitSha1Test.c src/lib/tests/gitSha1Test.c index 04d1133..a76d48d 100644 --- src/lib/tests/gitSha1Test.c +++ src/lib/tests/gitSha1Test.c @@ -1,19 +1,20 @@ #include <stdio.h> #include <stdlib.h> #include "common.h" #include "obscure.h" +#include "portable.h" #include "gitSha1.h" void manual_way(char *filename, unsigned char hash[20]) /* generate sha1 manually the hard way. */ { FILE *fp = fopen (filename, "r"); if (!fp) errAbort("missing file %s", filename); #define BS 4096 /* match coreutils */ blk_SHA_CTX ctx; blk_SHA1_Init(&ctx); size_t nr; char buf[BS]; while ((nr=fread_unlocked(buf, 1, sizeof(buf), fp))) @@ -89,43 +90,45 @@ char *string_empty() /* generate sha1 via lib on empty input. */ { char *buf = NULL; size_t bufSize = 0; return sha1HexForBuf(buf, bufSize); } int main(int argc, char** argv) { if (argc != 2) errAbort("must specfy file to use for sha1 has on commandline."); char* filename = argv[1]; - unsigned char hash[20]; - manual_way(filename, hash); + printf("Library filename way:\n"); + long thisTime = 0, lastTime = 0; + lastTime = clock1(); + char *hex = sha1HexForFile(filename); + thisTime = clock1(); + printf("%s %s elapsed time in seconds: %ld\n\n", hex, filename, (thisTime - lastTime)); printf("Manual filename way:\n"); + unsigned char hash[20]; + manual_way(filename, hash); int i; for (i=0; i<sizeof(hash); i++) printf("%02x",*(hash+i)); printf(" %s\n\n", filename); - printf("Library filename way:\n"); - char *hex = sha1HexForFile(filename); - printf("%s %s\n\n", hex, filename); - printf("Library string way:\n"); hex = string_way(filename); printf("%s %s\n\n", hex, filename); printf("GIT way:\n"); hex = git_way(filename); printf("%s with git blob prefix %s\n\n", hex, filename); printf("GIT way2:\n"); hex = git_way2(filename); printf("%s with git way2 blob prefix %s\n\n", hex, filename); git_way3(filename); printf("\n");