#include "tests.h" #include #include #include #include #include #include #include using namespace Botan; namespace { Transformation* get_transform(const std::string& algo) { throw std::runtime_error("Unknown transform " + algo); } secure_vector transform_test(const std::string& algo, const secure_vector& nonce, const secure_vector& key, const secure_vector& in) { std::unique_ptr transform(get_transform(algo)); transform->set_key(key); transform->start_vec(nonce); secure_vector out = in; transform->update(out, 0); return out; } } size_t test_transform() { std::ifstream vec(CHECKS_DIR "/transform.vec"); return run_tests(vec, "Transform", "Output", true, [](std::map m) { return hex_encode(transform_test(m["Transform"], hex_decode_locked(m["Nonce"]), hex_decode_locked(m["Key"]), hex_decode_locked(m["Input"]))); }); }