diff --git a/apps/openstacknode/app/src/test/java/org/onosproject/openstacknode/impl/DefaultOpenstackNodeHandlerTest.java b/apps/openstacknode/app/src/test/java/org/onosproject/openstacknode/impl/DefaultOpenstackNodeHandlerTest.java
index ff59237..b07044f 100644
--- a/apps/openstacknode/app/src/test/java/org/onosproject/openstacknode/impl/DefaultOpenstackNodeHandlerTest.java
+++ b/apps/openstacknode/app/src/test/java/org/onosproject/openstacknode/impl/DefaultOpenstackNodeHandlerTest.java
@@ -408,7 +408,7 @@
                 intgBridge.id(),
                 ipAddr,
                 ipAddr,
-                null, null, state, phyIntfs, null);
+                null, null, state, phyIntfs, null, null);
     }
 
     private static OpenstackNode createGatewayNode(String hostname,
@@ -423,7 +423,7 @@
                 intgBridge.id(),
                 ipAddr,
                 ipAddr,
-                null, uplinkPort, state, null, null);
+                null, uplinkPort, state, null, null, null);
     }
 
     private static final class TestDevice extends DefaultDevice {
@@ -482,7 +482,8 @@
                                   String uplinkPort,
                                   NodeState state,
                                   Set<OpenstackPhyInterface> phyIntfs,
-                                  OpenstackAuth auth) {
+                                  OpenstackAuth auth,
+                                  String endPoint) {
             super(hostname,
                     type,
                     intgBridge,
@@ -492,7 +493,8 @@
                     uplinkPort,
                     state,
                     phyIntfs,
-                    auth);
+                    auth,
+                    endPoint);
         }
 
         @Override
