diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/buildfile | 2 | ||||
-rw-r--r-- | tests/sha256/buildfile | 7 | ||||
-rw-r--r-- | tests/sha256/driver.cxx | 34 |
3 files changed, 42 insertions, 1 deletions
diff --git a/tests/buildfile b/tests/buildfile index 57e632e..0ad40e5 100644 --- a/tests/buildfile +++ b/tests/buildfile @@ -2,6 +2,6 @@ # copyright : Copyright (c) 2014-2016 Code Synthesis Ltd # license : MIT; see accompanying LICENSE file -d = dir-iterator/ path/ prefix-map/ triplet/ +d = dir-iterator/ path/ prefix-map/ sha256/ triplet/ .: $d include $d diff --git a/tests/sha256/buildfile b/tests/sha256/buildfile new file mode 100644 index 0000000..4116ff6 --- /dev/null +++ b/tests/sha256/buildfile @@ -0,0 +1,7 @@ +# file : tests/sha256/buildfile +# copyright : Copyright (c) 2014-2016 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + +exe{driver}: cxx{driver} ../../butl/lib{butl} + +include ../../butl/ diff --git a/tests/sha256/driver.cxx b/tests/sha256/driver.cxx new file mode 100644 index 0000000..12928b2 --- /dev/null +++ b/tests/sha256/driver.cxx @@ -0,0 +1,34 @@ +// file : tests/triplet/driver.cxx -*- C++ -*- +// copyright : Copyright (c) 2014-2016 Code Synthesis Ltd +// license : MIT; see accompanying LICENSE file + +#include <string> +#include <cassert> +#include <iostream> + +#include <butl/sha256> + +using namespace std; +using namespace butl; + +int +main () +{ + assert (string (sha256 ().string ()) == + "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"); + + assert (string (sha256 ("123").string ()) == + "a665a45920422f9d417e4867efdc4fb8a04a1f3fff1fa07e998e86f7f7a27ae3"); + + sha256 h; + h.append ("1"); + h.append (string ("2")); + h.append ("3", 1); + + auto& b (h.binary ()); + assert (b[0] == 0xa6 && b[31] == 0xe3); + + string s (h.string ()); + assert (s == + "a665a45920422f9d417e4867efdc4fb8a04a1f3fff1fa07e998e86f7f7a27ae3"); +} |