diff --git a/drivers/src/test/java/org/onosproject/driver/extensions/NiciraSetNshSpiTest.java b/drivers/src/test/java/org/onosproject/driver/extensions/NiciraSetNshSpiTest.java
index 197e3bf..5650c82 100644
--- a/drivers/src/test/java/org/onosproject/driver/extensions/NiciraSetNshSpiTest.java
+++ b/drivers/src/test/java/org/onosproject/driver/extensions/NiciraSetNshSpiTest.java
@@ -20,6 +20,7 @@
 import static org.hamcrest.Matchers.notNullValue;
 
 import org.junit.Test;
+import org.onosproject.net.NshServicePathId;
 
 import com.google.common.testing.EqualsTester;
 
@@ -28,9 +29,9 @@
  */
 public class NiciraSetNshSpiTest {
 
-    final NiciraSetNshSpi nshSpi1 = new NiciraSetNshSpi(10);
-    final NiciraSetNshSpi sameAsNshSpi1 = new NiciraSetNshSpi(10);
-    final NiciraSetNshSpi nshSpi2 = new NiciraSetNshSpi(20);
+    final NiciraSetNshSpi nshSpi1 = new NiciraSetNshSpi(NshServicePathId.of(10));
+    final NiciraSetNshSpi sameAsNshSpi1 = new NiciraSetNshSpi(NshServicePathId.of(10));
+    final NiciraSetNshSpi nshSpi2 = new NiciraSetNshSpi(NshServicePathId.of(20));
 
     /**
      * Checks the operation of equals() methods.
@@ -45,8 +46,8 @@
      */
     @Test
     public void testConstruction() {
-        final NiciraSetNshSpi niciraSetNshSpi = new NiciraSetNshSpi(10);
+        final NiciraSetNshSpi niciraSetNshSpi = new NiciraSetNshSpi(NshServicePathId.of(10));
         assertThat(niciraSetNshSpi, is(notNullValue()));
-        assertThat(niciraSetNshSpi.nshSpi(), is(10));
+        assertThat(niciraSetNshSpi.nshSpi().servicePathId(), is(10));
     }
 }
