diff options
Diffstat (limited to 'tools/slang-unit-test/unit-test-digest-builder.cpp')
| -rw-r--r-- | tools/slang-unit-test/unit-test-digest-builder.cpp | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/tools/slang-unit-test/unit-test-digest-builder.cpp b/tools/slang-unit-test/unit-test-digest-builder.cpp new file mode 100644 index 000000000..b89b31a7b --- /dev/null +++ b/tools/slang-unit-test/unit-test-digest-builder.cpp @@ -0,0 +1,72 @@ +// unit-test-digest-utils.cpp + +#include "tools/unit-test/slang-unit-test.h" + +#include "../../source/core/slang-digest-builder.h" +#include "../../source/core/slang-digest-util.h" + +using namespace Slang; + +SLANG_UNIT_TEST(digestBuilder) +{ + // Raw numerical values, etc. + { + DigestBuilder builder; + + int64_t valueA = -1; + uint64_t valueB = 1; + builder.append(valueA); + builder.append(valueB); + + slang::Digest digest = builder.finalize(); + SLANG_CHECK(DigestUtil::toString(digest) == "5BA171E20898BDD205639013746F2679"); + } + + // List + { + DigestBuilder builder; + + List<int64_t> listA; + listA.add(1); + listA.add(2); + listA.add(3); + listA.add(4); + builder.append(listA); + + slang::Digest digest = builder.finalize(); + SLANG_CHECK(DigestUtil::toString(digest) == "9F66C130786A1A05E4731F71A3C5F172"); + } + + // UnownedStringSlice + { + DigestBuilder builder; + + UnownedStringSlice stringSlice = UnownedStringSlice("String Slice Test"); + builder.append(stringSlice); + + slang::Digest digest = builder.finalize(); + SLANG_CHECK(DigestUtil::toString(digest) == "5D6CC58E1824A4DFD0CF57395B603316"); + } + + // String + { + DigestBuilder builder; + + String str = String("String Test"); + builder.append(str); + + slang::Digest digest = builder.finalize(); + SLANG_CHECK(DigestUtil::toString(digest) == "DF5A79CC2170C7401CF0A506CEB0CE24"); + } + + // Digest + { + DigestBuilder builder; + + slang::Digest hash; + builder.append(hash); + + slang::Digest digest = builder.finalize(); + SLANG_CHECK(DigestUtil::toString(digest) == "4AE71336E44BF9BF79D2752E234818A5"); + } +} |
