From 518ab64c6185204151473618c46be3ef8c09011e Mon Sep 17 00:00:00 2001 From: Keaton Sentak Date: Thu, 3 Oct 2024 14:43:07 -0400 Subject: [PATCH] test(core): SecureStorage unit tests --- .../sdk/cpptest/unit/securestorageTest.cpp | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 src/sdks/core/src/cpp/sdk/cpptest/unit/securestorageTest.cpp diff --git a/src/sdks/core/src/cpp/sdk/cpptest/unit/securestorageTest.cpp b/src/sdks/core/src/cpp/sdk/cpptest/unit/securestorageTest.cpp new file mode 100644 index 000000000..8fdc05518 --- /dev/null +++ b/src/sdks/core/src/cpp/sdk/cpptest/unit/securestorageTest.cpp @@ -0,0 +1,61 @@ +#include "unit.h" + +class SecureStorageTest : public ::testing::Test +{ +protected: + JsonEngine *jsonEngine; + Firebolt::Error error = Firebolt::Error::None; + + void SetUp() override + { + jsonEngine = new JsonEngine(); + } + + void TearDown() override + { + delete jsonEngine; + } +}; + +// Check enum issue with test app verse actual transport +TEST_F(SecureStorageTest, Get) +{ + auto expectedValue = jsonEngine->get_value("SecureStorage.get"); + + Firebolt::SecureStorage::StorageScope scope = Firebolt::SecureStorage::StorageScope::DEVICE; + + std::string actualValue = Firebolt::IFireboltAccessor::Instance().SecureStorageInterface().get(scope, "authRefreshToken", &error); + + EXPECT_EQ(expectedValue, actualValue); +} + +TEST_F(SecureStorageTest, Set) +{ + // Call setter to set the value + Firebolt::SecureStorage::StorageScope scope = Firebolt::SecureStorage::StorageScope::DEVICE; + std::string expectedValue = "123456"; + Firebolt::SecureStorage::StorageOptions options; + options.ttl = 6.0; + Firebolt::IFireboltAccessor::Instance().SecureStorageInterface().set(scope, "authRefreshToken", expectedValue, options, &error); + + // Check if there was an error during the set operation + EXPECT_EQ(error, Firebolt::Error::None) << "Failed to set value in SecureStorage.set() method"; +} + +TEST_F(SecureStorageTest, Remove) +{ + Firebolt::SecureStorage::StorageScope scope = Firebolt::SecureStorage::StorageScope::DEVICE; + Firebolt::IFireboltAccessor::Instance().SecureStorageInterface().remove(scope, "authRefreshToken", &error); + + // Check if there was an error during the remove operation + EXPECT_EQ(error, Firebolt::Error::None) << "Failed to remove value in SecureStorage.remove() method"; +} + +TEST_F(SecureStorageTest, Clear) +{ + Firebolt::SecureStorage::StorageScope scope = Firebolt::SecureStorage::StorageScope::DEVICE; + Firebolt::IFireboltAccessor::Instance().SecureStorageInterface().clear(scope, &error); + + // Check if there was an error during the clear operation + EXPECT_EQ(error, Firebolt::Error::None) << "Failed to clear value in SecureStorage.clear() method"; +}