diff --git a/redfish-core/ut/privileges_test.cpp b/redfish-core/ut/privileges_test.cpp
index 92cd6c4..d857290 100644
--- a/redfish-core/ut/privileges_test.cpp
+++ b/redfish-core/ut/privileges_test.cpp
@@ -1,114 +1,127 @@
+#include "nlohmann/json.hpp"
 #include "privileges.hpp"
+
 #include <fstream>
 #include <string>
-#include "nlohmann/json.hpp"
+
 #include "gmock/gmock.h"
 
 using namespace redfish;
 
-TEST(PrivilegeTest, PrivilegeConstructor) {
-  Privileges privileges{"Login", "ConfigureManager"};
+TEST(PrivilegeTest, PrivilegeConstructor)
+{
+    Privileges privileges{"Login", "ConfigureManager"};
 
-  EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::BASE),
-              ::testing::UnorderedElementsAre(
-                  ::testing::Pointee(&"Login"[0]),
-                  ::testing::Pointee(&"ConfigureManager"[0])));
+    EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::BASE),
+                ::testing::UnorderedElementsAre(
+                    ::testing::Pointee(&"Login"[0]),
+                    ::testing::Pointee(&"ConfigureManager"[0])));
 }
 
-TEST(PrivilegeTest, PrivilegeCheckForNoPrivilegesRequired) {
-  Privileges userPrivileges{"Login"};
+TEST(PrivilegeTest, PrivilegeCheckForNoPrivilegesRequired)
+{
+    Privileges userPrivileges{"Login"};
 
-  OperationMap entityPrivileges{{boost::beast::http::verb::get, {{"Login"}}}};
+    OperationMap entityPrivileges{{boost::beast::http::verb::get, {{"Login"}}}};
 
-  EXPECT_TRUE(isMethodAllowedWithPrivileges(boost::beast::http::verb::get,
-                                            entityPrivileges, userPrivileges));
+    EXPECT_TRUE(isMethodAllowedWithPrivileges(
+        boost::beast::http::verb::get, entityPrivileges, userPrivileges));
 }
 
-TEST(PrivilegeTest, PrivilegeCheckForSingleCaseSuccess) {
-  auto userPrivileges = Privileges{"Login"};
-  OperationMap entityPrivileges{{boost::beast::http::verb::get, {}}};
+TEST(PrivilegeTest, PrivilegeCheckForSingleCaseSuccess)
+{
+    auto userPrivileges = Privileges{"Login"};
+    OperationMap entityPrivileges{{boost::beast::http::verb::get, {}}};
 
-  EXPECT_TRUE(isMethodAllowedWithPrivileges(boost::beast::http::verb::get,
-                                            entityPrivileges, userPrivileges));
+    EXPECT_TRUE(isMethodAllowedWithPrivileges(
+        boost::beast::http::verb::get, entityPrivileges, userPrivileges));
 }
 
-TEST(PrivilegeTest, PrivilegeCheckForSingleCaseFailure) {
-  auto userPrivileges = Privileges{"Login"};
-  OperationMap entityPrivileges{
-      {boost::beast::http::verb::get, {{"ConfigureManager"}}}};
+TEST(PrivilegeTest, PrivilegeCheckForSingleCaseFailure)
+{
+    auto userPrivileges = Privileges{"Login"};
+    OperationMap entityPrivileges{
+        {boost::beast::http::verb::get, {{"ConfigureManager"}}}};
 
-  EXPECT_FALSE(isMethodAllowedWithPrivileges(boost::beast::http::verb::get,
-                                             entityPrivileges, userPrivileges));
+    EXPECT_FALSE(isMethodAllowedWithPrivileges(
+        boost::beast::http::verb::get, entityPrivileges, userPrivileges));
 }
 
-TEST(PrivilegeTest, PrivilegeCheckForANDCaseSuccess) {
-  auto userPrivileges =
-      Privileges{"Login", "ConfigureManager", "ConfigureSelf"};
-  OperationMap entityPrivileges{
-      {boost::beast::http::verb::get,
-       {{"Login", "ConfigureManager", "ConfigureSelf"}}}};
+TEST(PrivilegeTest, PrivilegeCheckForANDCaseSuccess)
+{
+    auto userPrivileges =
+        Privileges{"Login", "ConfigureManager", "ConfigureSelf"};
+    OperationMap entityPrivileges{
+        {boost::beast::http::verb::get,
+         {{"Login", "ConfigureManager", "ConfigureSelf"}}}};
 
-  EXPECT_TRUE(isMethodAllowedWithPrivileges(boost::beast::http::verb::get,
-                                            entityPrivileges, userPrivileges));
+    EXPECT_TRUE(isMethodAllowedWithPrivileges(
+        boost::beast::http::verb::get, entityPrivileges, userPrivileges));
 }
 
-TEST(PrivilegeTest, PrivilegeCheckForANDCaseFailure) {
-  auto userPrivileges = Privileges{"Login", "ConfigureManager"};
-  OperationMap entityPrivileges{
-      {boost::beast::http::verb::get,
-       {{"Login", "ConfigureManager", "ConfigureSelf"}}}};
+TEST(PrivilegeTest, PrivilegeCheckForANDCaseFailure)
+{
+    auto userPrivileges = Privileges{"Login", "ConfigureManager"};
+    OperationMap entityPrivileges{
+        {boost::beast::http::verb::get,
+         {{"Login", "ConfigureManager", "ConfigureSelf"}}}};
 
-  EXPECT_FALSE(isMethodAllowedWithPrivileges(boost::beast::http::verb::get,
-                                             entityPrivileges, userPrivileges));
+    EXPECT_FALSE(isMethodAllowedWithPrivileges(
+        boost::beast::http::verb::get, entityPrivileges, userPrivileges));
 }
 
-TEST(PrivilegeTest, PrivilegeCheckForORCaseSuccess) {
-  auto userPrivileges = Privileges{"ConfigureManager"};
-  OperationMap entityPrivileges{
-      {boost::beast::http::verb::get, {{"Login"}, {"ConfigureManager"}}}};
+TEST(PrivilegeTest, PrivilegeCheckForORCaseSuccess)
+{
+    auto userPrivileges = Privileges{"ConfigureManager"};
+    OperationMap entityPrivileges{
+        {boost::beast::http::verb::get, {{"Login"}, {"ConfigureManager"}}}};
 
-  EXPECT_TRUE(isMethodAllowedWithPrivileges(boost::beast::http::verb::get,
-                                            entityPrivileges, userPrivileges));
+    EXPECT_TRUE(isMethodAllowedWithPrivileges(
+        boost::beast::http::verb::get, entityPrivileges, userPrivileges));
 }
 
-TEST(PrivilegeTest, PrivilegeCheckForORCaseFailure) {
-  auto userPrivileges = Privileges{"ConfigureComponents"};
-  OperationMap entityPrivileges = OperationMap(
-      {{boost::beast::http::verb::get, {{"Login"}, {"ConfigureManager"}}}});
+TEST(PrivilegeTest, PrivilegeCheckForORCaseFailure)
+{
+    auto userPrivileges = Privileges{"ConfigureComponents"};
+    OperationMap entityPrivileges = OperationMap(
+        {{boost::beast::http::verb::get, {{"Login"}, {"ConfigureManager"}}}});
 
-  EXPECT_FALSE(isMethodAllowedWithPrivileges(boost::beast::http::verb::get,
-                                             entityPrivileges, userPrivileges));
+    EXPECT_FALSE(isMethodAllowedWithPrivileges(
+        boost::beast::http::verb::get, entityPrivileges, userPrivileges));
 }
 
-TEST(PrivilegeTest, DefaultPrivilegeBitsetsAreEmpty) {
-  Privileges privileges;
+TEST(PrivilegeTest, DefaultPrivilegeBitsetsAreEmpty)
+{
+    Privileges privileges;
 
-  EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::BASE),
-              ::testing::IsEmpty());
+    EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::BASE),
+                ::testing::IsEmpty());
 
-  EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::OEM),
-              ::testing::IsEmpty());
+    EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::OEM),
+                ::testing::IsEmpty());
 }
 
-TEST(PrivilegeTest, GetActivePrivilegeNames) {
-  Privileges privileges;
+TEST(PrivilegeTest, GetActivePrivilegeNames)
+{
+    Privileges privileges;
 
-  EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::BASE),
-              ::testing::IsEmpty());
+    EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::BASE),
+                ::testing::IsEmpty());
 
-  std::array<const char*, 5> expectedPrivileges{
-      "Login", "ConfigureManager", "ConfigureUsers", "ConfigureComponents",
-      "ConfigureSelf"};
+    std::array<const char*, 5> expectedPrivileges{
+        "Login", "ConfigureManager", "ConfigureUsers", "ConfigureComponents",
+        "ConfigureSelf"};
 
-  for (const auto& privilege : expectedPrivileges) {
-    EXPECT_TRUE(privileges.setSinglePrivilege(privilege));
-  }
+    for (const auto& privilege : expectedPrivileges)
+    {
+        EXPECT_TRUE(privileges.setSinglePrivilege(privilege));
+    }
 
-  EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::BASE),
-              ::testing::UnorderedElementsAre(
-                  ::testing::Pointee(expectedPrivileges[0]),
-                  ::testing::Pointee(expectedPrivileges[1]),
-                  ::testing::Pointee(expectedPrivileges[2]),
-                  ::testing::Pointee(expectedPrivileges[3]),
-                  ::testing::Pointee(expectedPrivileges[4])));
+    EXPECT_THAT(privileges.getActivePrivilegeNames(PrivilegeType::BASE),
+                ::testing::UnorderedElementsAre(
+                    ::testing::Pointee(expectedPrivileges[0]),
+                    ::testing::Pointee(expectedPrivileges[1]),
+                    ::testing::Pointee(expectedPrivileges[2]),
+                    ::testing::Pointee(expectedPrivileges[3]),
+                    ::testing::Pointee(expectedPrivileges[4])));
 }
