#include #include "../../src/config/CryConfig.h" using namespace cryfs; using cpputils::Data; class CryConfigTest: public ::testing::Test { public: CryConfig cfg; CryConfig SaveAndLoad(CryConfig cfg) { Data configData = cfg.save(); return CryConfig::load(configData); } }; TEST_F(CryConfigTest, RootBlob_Init) { EXPECT_EQ("", cfg.RootBlob()); } TEST_F(CryConfigTest, RootBlob) { cfg.SetRootBlob("rootblobid"); EXPECT_EQ("rootblobid", cfg.RootBlob()); } TEST_F(CryConfigTest, RootBlob_AfterMove) { cfg.SetRootBlob("rootblobid"); CryConfig moved = std::move(cfg); EXPECT_EQ("rootblobid", moved.RootBlob()); } TEST_F(CryConfigTest, RootBlob_AfterSaveAndLoad) { cfg.SetRootBlob("rootblobid"); CryConfig loaded = SaveAndLoad(std::move(cfg)); EXPECT_EQ("rootblobid", loaded.RootBlob()); } TEST_F(CryConfigTest, EncryptionKey_Init) { EXPECT_EQ("", cfg.EncryptionKey()); } TEST_F(CryConfigTest, EncryptionKey) { cfg.SetEncryptionKey("enckey"); EXPECT_EQ("enckey", cfg.EncryptionKey()); } TEST_F(CryConfigTest, EncryptionKey_AfterMove) { cfg.SetEncryptionKey("enckey"); CryConfig moved = std::move(cfg); EXPECT_EQ("enckey", moved.EncryptionKey()); } TEST_F(CryConfigTest, EncryptionKey_AfterSaveAndLoad) { cfg.SetEncryptionKey("enckey"); CryConfig loaded = SaveAndLoad(std::move(cfg)); EXPECT_EQ("enckey", loaded.EncryptionKey()); } TEST_F(CryConfigTest, Cipher_Init) { EXPECT_EQ("", cfg.Cipher()); } TEST_F(CryConfigTest, Cipher) { cfg.SetCipher("mycipher"); EXPECT_EQ("mycipher", cfg.Cipher()); } TEST_F(CryConfigTest, Cipher_AfterMove) { cfg.SetCipher("mycipher"); CryConfig moved = std::move(cfg); EXPECT_EQ("mycipher", moved.Cipher()); } TEST_F(CryConfigTest, Cipher_AfterSaveAndLoad) { cfg.SetCipher("mycipher"); CryConfig loaded = SaveAndLoad(std::move(cfg)); EXPECT_EQ("mycipher", loaded.Cipher()); }