test(tvix): Cover scanForReferences in a test

Aded a few test cases covering the scanForReferences function, which had
been accidentally broken in 976a36c (which is now partially-reverted).
As part of this, since the test needed to generate hashes for store
paths, the logic in MakeStorePath to compress a sha256 hash down to 20
bytes and convert it to base32 has been extracted to a member function
on the Hash class.

Fixes: #34
Change-Id: Ie2d914688a80f42d0234d351a7cc0714fd15709e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1698
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
This commit is contained in:
Griffin Smith 2020-08-09 00:27:55 -04:00 committed by glittershark
parent dfab786653
commit d1653533a6
6 changed files with 98 additions and 5 deletions

View file

@ -323,9 +323,8 @@ Path Store::makeStorePath(const std::string& type, const Hash& hash,
checkStoreName(name);
return storeDir + "/" +
compressHash(hashString(htSHA256, s), 20).to_string(Base32, false) +
"-" + name;
return absl::StrCat(storeDir, "/", hashString(htSHA256, s).ToStorePathHash(),
"-", name);
}
Path Store::makeOutputPath(const std::string& id, const Hash& hash,