horcrux/test/utils-test.cpp

46 lines
2.0 KiB
C++
Raw Normal View History

2020-12-11 11:38:02 +00:00
#include <string>
#include "gtest/gtest.h"
#include "utils.h"
const std::string test1_str = "sei proprio un sandrone";
const std::string test1_base64 = "c2VpIHByb3ByaW8gdW4gc2FuZHJvbmU=";
const std::string test2_str = "catopleba io ti dono le mie tepa";
const std::string test2_base64 = "Y2F0b3BsZWJhIGlvIHRpIGRvbm8gbGUgbWllIHRlcGE=";
const std::string test3_str = "il pene mi da' si' la moto, ma la moto non da' pene";
const std::string test3_base64 = "aWwgcGVuZSBtaSBkYScgc2knIGxhIG1vdG8sIG1hIGxhIG1vdG8gbm9uIGRhJyBwZW5l";
const std::string test4_str = "mi e' entrata una bruschetta nell'occhio";
const std::string test4_base64 = "bWkgZScgZW50cmF0YSB1bmEgYnJ1c2NoZXR0YSBuZWxsJ29jY2hpbw==";
TEST(utilTests, to_base64Test){
EXPECT_EQ(test1_base64, utils::to_base64(std::vector<unsigned char>(test1_str.begin(), test1_str.end())));
EXPECT_EQ(test2_base64, utils::to_base64(std::vector<unsigned char>(test2_str.begin(), test2_str.end())));
EXPECT_EQ(test3_base64, utils::to_base64(std::vector<unsigned char>(test3_str.begin(), test3_str.end())));
EXPECT_EQ(test4_base64, utils::to_base64(std::vector<unsigned char>(test4_str.begin(), test4_str.end())));
}
TEST(utilTests, from_base64Test){
auto result = utils::from_base64(test1_base64);
EXPECT_EQ(test1_str, std::string(result.begin(), result.end()));
result = utils::from_base64(test2_base64);
EXPECT_EQ(test2_str, std::string(result.begin(), result.end()));
result = utils::from_base64(test3_base64);
EXPECT_EQ(test3_str, std::string(result.begin(), result.end()));
result = utils::from_base64(test4_base64);
EXPECT_EQ(test4_str, std::string(result.begin(), result.end()));
}
TEST(utilTests, generate_random){
EXPECT_NE(utils::generate_random(32), utils::generate_random(32));
EXPECT_NE(utils::generate_random(16), utils::generate_random(16));
EXPECT_NE(utils::generate_random(8), utils::generate_random(8));
EXPECT_NE(utils::generate_random(1), utils::generate_random(1));
EXPECT_EQ(utils::generate_random(0), utils::generate_random(0));
}