diff --git a/test/test_error_notification.cpp b/test/test_error_notification.cpp
index 580a820..71a554a 100644
--- a/test/test_error_notification.cpp
+++ b/test/test_error_notification.cpp
@@ -1,7 +1,9 @@
 #include "snmp_notification.hpp"
-#include <gtest/gtest.h>
+
 #include <netinet/in.h>
 
+#include <gtest/gtest.h>
+
 namespace phosphor
 {
 namespace network
diff --git a/test/test_snmp_client.cpp b/test/test_snmp_client.cpp
index 04fbdf8..1dd9eb4 100644
--- a/test/test_snmp_client.cpp
+++ b/test/test_snmp_client.cpp
@@ -1,9 +1,9 @@
-#include <gtest/gtest.h>
+#include "snmp_conf_manager.hpp"
+#include "snmp_serialize.hpp"
 
 #include <xyz/openbmc_project/Common/error.hpp>
 
-#include "snmp_conf_manager.hpp"
-#include "snmp_serialize.hpp"
+#include <gtest/gtest.h>
 
 namespace phosphor
 {
diff --git a/test/test_snmp_conf_manager.cpp b/test/test_snmp_conf_manager.cpp
index 6cb2a53..bcf89e7 100644
--- a/test/test_snmp_conf_manager.cpp
+++ b/test/test_snmp_conf_manager.cpp
@@ -1,10 +1,10 @@
 #include "snmp_conf_manager.hpp"
-
 #include "xyz/openbmc_project/Common/error.hpp"
 
-#include <gtest/gtest.h>
 #include <sdbusplus/bus.hpp>
 
+#include <gtest/gtest.h>
+
 namespace phosphor
 {
 namespace network
@@ -40,14 +40,14 @@
         return manager.client(ipaddress, port);
     }
 
-    ClientList &getSNMPClients()
+    ClientList& getSNMPClients()
     {
         return manager.clients;
     }
 
-    bool isClientExist(const std::string &ipaddress)
+    bool isClientExist(const std::string& ipaddress)
     {
-        for (const auto &val : manager.clients)
+        for (const auto& val : manager.clients)
         {
             if (val.second.get()->address() == ipaddress)
             {
@@ -59,7 +59,7 @@
 
     void deleteSNMPClient(std::string ipaddress)
     {
-        for (const auto &val : manager.clients)
+        for (const auto& val : manager.clients)
         {
             if (val.second.get()->address() == ipaddress)
             {
@@ -80,7 +80,7 @@
     EXPECT_EQ(path, expectedPath);
 
     // check whether the client created
-    auto &clients = getSNMPClients();
+    auto& clients = getSNMPClients();
     EXPECT_EQ(1, clients.size());
     EXPECT_EQ(true, isClientExist("192.168.1.1"));
 }
@@ -98,7 +98,7 @@
     EXPECT_EQ(path, expectedPath);
 
     // check both the clients get created
-    auto &clients = getSNMPClients();
+    auto& clients = getSNMPClients();
     EXPECT_EQ(2, clients.size());
 
     EXPECT_EQ(true, isClientExist("192.168.1.1"));
@@ -118,7 +118,7 @@
     createSNMPClient("192.168.1.1", 24);
     createSNMPClient("192.168.1.2", 24);
 
-    auto &clients = getSNMPClients();
+    auto& clients = getSNMPClients();
     EXPECT_EQ(2, clients.size());
 
     deleteSNMPClient("192.168.1.1");
diff --git a/test/test_snmp_serialize.cpp b/test/test_snmp_serialize.cpp
index c276cb1..1b0928e 100644
--- a/test/test_snmp_serialize.cpp
+++ b/test/test_snmp_serialize.cpp
@@ -1,12 +1,14 @@
-#include <experimental/filesystem>
-#include <fstream>
-#include <gtest/gtest.h>
-#include <netinet/in.h>
-
 #include "snmp_client.hpp"
 #include "snmp_conf_manager.hpp"
 #include "snmp_serialize.hpp"
 
+#include <netinet/in.h>
+
+#include <experimental/filesystem>
+#include <fstream>
+
+#include <gtest/gtest.h>
+
 namespace phosphor
 {
 namespace network
diff --git a/test/test_snmp_util.cpp b/test/test_snmp_util.cpp
index 7bc5b43..5dca0ef 100644
--- a/test/test_snmp_util.cpp
+++ b/test/test_snmp_util.cpp
@@ -1,8 +1,11 @@
-#include <gtest/gtest.h>
-#include <netinet/in.h>
 #include "snmp_util.hpp"
+
+#include <netinet/in.h>
+
 #include <xyz/openbmc_project/Common/error.hpp>
 
+#include <gtest/gtest.h>
+
 namespace phosphor
 {
 namespace network
