diff --git a/src/test/java/org/opencord/kafka/integrations/DhcpL2RelayKafkaIntegrationTest.java b/src/test/java/org/opencord/kafka/integrations/DhcpL2RelayKafkaIntegrationTest.java
index f726b22..fe45d40 100644
--- a/src/test/java/org/opencord/kafka/integrations/DhcpL2RelayKafkaIntegrationTest.java
+++ b/src/test/java/org/opencord/kafka/integrations/DhcpL2RelayKafkaIntegrationTest.java
@@ -70,7 +70,7 @@
                 DHCP.MsgType.DHCPREQUEST, ONU_SERIAL, OLT_MAC,
                 LOCAL_IP);
         DhcpL2RelayEvent event = new DhcpL2RelayEvent(DhcpL2RelayEvent.Type.STATS_UPDATE,
-                allocationInfo, OLT_CONNECT_POINT, entryCounter, DHCP_COUNTER_TOPIC, null);
+                allocationInfo, OLT_CONNECT_POINT, entryCounter, null);
         dhcpL2RelayListener.event(event);
         assertEquals(MockEventBusService.dhcpStats, 1);
         assertEquals(MockEventBusService.otherCounter, 0);
@@ -88,7 +88,7 @@
                 DHCP.MsgType.DHCPREQUEST, ONU_SERIAL, OLT_MAC,
                 LOCAL_IP);
         DhcpL2RelayEvent event = new DhcpL2RelayEvent(DhcpL2RelayEvent.Type.STATS_UPDATE,
-                allocationInfo, OLT_CONNECT_POINT, entryCounter, DHCP_COUNTER_TOPIC, ONU_SERIAL);
+                allocationInfo, OLT_CONNECT_POINT, entryCounter, ONU_SERIAL);
         dhcpL2RelayListener.event(event);
         assertEquals(MockEventBusService.dhcpStats, 1);
         assertEquals(MockEventBusService.otherCounter, 0);
@@ -106,7 +106,7 @@
                 DHCP.MsgType.DHCPREQUEST, ONU_SERIAL, OLT_MAC,
                 LOCAL_IP);
         DhcpL2RelayEvent event = new DhcpL2RelayEvent(DhcpL2RelayEvent.Type.UPDATED,
-                allocationInfo, cp, entryCounter, DHCP_COUNTER_TOPIC, null);
+                allocationInfo, cp, entryCounter, null);
         dhcpL2RelayListener.event(event);
         assertEquals(MockEventBusService.dhcpEvents, 1);
         assertEquals(MockEventBusService.otherCounter, 0);
@@ -149,5 +149,20 @@
         public void removeListener(DhcpL2RelayListener listener) {
             dhcpL2RelayListener = null;
         }
+
+        @Override
+        public Map<String, DhcpAllocationInfo> getAllocationInfo() {
+            return null;
+        }
+
+        @Override
+        public void clearAllocations() {
+
+        }
+
+        @Override
+        public boolean removeAllocationByConnectPoint(ConnectPoint connectPoint) {
+            return false;
+        }
     }
 }
\ No newline at end of file
