Cockatrice/tests/password_hash_test.cpp
Lukas Brübach 01378b8314 Turn things in common into separate libs.
Took 2 hours 27 minutes
2025-10-04 15:10:20 +02:00

39 lines
912 B
C++

#include "../libs/rng/include/rng/rng_abstract.h"
#include "../libs/rng/include/rng/rng_sfmt.h"
#include "../libs/utility/include/utility/passwordhasher.h"
#include "gtest/gtest.h"
RNG_Abstract *rng;
namespace
{
class PasswordHashTest : public ::testing::Test
{
protected:
void SetUp() override
{
rng = new RNG_SFMT;
}
void TearDown() override
{
delete rng;
}
};
TEST(PasswordHashTest, RegressionTest)
{
QString salt = "saltsaltsaltsalt";
QString password = "password";
QString expected = "vmKoWv975yf+WT2QCXhW48JNzZ2ghGxdgNvuKLBU0h7s6AQHSG72J6QO4ZswuSeqvBbAXbmgJSRBaSJrgc55WA==";
QString hash = PasswordHasher::computeHash(password, salt);
ASSERT_EQ(hash, salt + expected) << "The computed hash value remains the same";
}
} // namespace
int main(int argc, char **argv)
{
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}