blob: 8c75031e4aae69314d028aa33da1c1fdebef75d0 [file] [log] [blame]
#include "serialize.hpp"
#include <filesystem>
#include <gtest/gtest.h>
using namespace phosphor::led;
TEST(SerializeTest, testStoreGroups)
{
namespace fs = std::filesystem;
static constexpr auto& path = "config/led-save-group.json";
static constexpr auto& bmcBooted =
"/xyz/openbmc_project/led/groups/bmc_booted";
static constexpr auto& powerOn = "/xyz/openbmc_project/led/groups/power_on";
static constexpr auto& enclosureIdentify =
"/xyz/openbmc_project/led/groups/EnclosureIdentify";
Serialize serialize(path);
serialize.storeGroups(bmcBooted, true);
ASSERT_EQ(true, serialize.getGroupSavedState(bmcBooted));
serialize.storeGroups(powerOn, true);
ASSERT_EQ(true, serialize.getGroupSavedState(powerOn));
serialize.storeGroups(bmcBooted, false);
ASSERT_EQ(false, serialize.getGroupSavedState(bmcBooted));
serialize.storeGroups(enclosureIdentify, true);
ASSERT_EQ(true, serialize.getGroupSavedState(enclosureIdentify));
Serialize newSerial(path);
ASSERT_EQ(true, newSerial.getGroupSavedState(powerOn));
ASSERT_EQ(true, newSerial.getGroupSavedState(enclosureIdentify));
newSerial.storeGroups(powerOn, false);
ASSERT_EQ(false, newSerial.getGroupSavedState(powerOn));
newSerial.storeGroups(enclosureIdentify, false);
ASSERT_EQ(false, newSerial.getGroupSavedState(enclosureIdentify));
}