diff --git a/core/api/src/test/java/org/onlab/onos/net/device/DeviceEventTest.java b/core/api/src/test/java/org/onlab/onos/net/device/DeviceEventTest.java
index 6f1219a..7175308 100644
--- a/core/api/src/test/java/org/onlab/onos/net/device/DeviceEventTest.java
+++ b/core/api/src/test/java/org/onlab/onos/net/device/DeviceEventTest.java
@@ -1,5 +1,8 @@
 package org.onlab.onos.net.device;
 
+import static org.junit.Assert.assertEquals;
+import static org.onlab.onos.net.DeviceId.deviceId;
+
 import org.junit.Test;
 import org.onlab.onos.event.AbstractEventTest;
 import org.onlab.onos.net.DefaultDevice;
@@ -9,9 +12,6 @@
 import org.onlab.onos.net.PortNumber;
 import org.onlab.onos.net.provider.ProviderId;
 
-import static org.junit.Assert.assertEquals;
-import static org.onlab.onos.net.DeviceId.deviceId;
-
 /**
  * Tests of the device event.
  */
@@ -19,23 +19,25 @@
 
     private Device createDevice() {
         return new DefaultDevice(new ProviderId("foo"), deviceId("of:foo"),
-                                 Device.Type.SWITCH, "box", "hw", "sw", "sn");
+                Device.Type.SWITCH, "box", "hw", "sw", "sn");
     }
 
+    @Override
     @Test
     public void withTime() {
         Device device = createDevice();
-        Port port = new DefaultPort(device, PortNumber.portNumber(123L), true);
+        Port port = new DefaultPort(device, PortNumber.portNumber(123), true);
         DeviceEvent event = new DeviceEvent(DeviceEvent.Type.DEVICE_ADDED,
-                                            device, port, 123L);
+                device, port, 123L);
         validateEvent(event, DeviceEvent.Type.DEVICE_ADDED, device, 123L);
         assertEquals("incorrect port", port, event.port());
     }
 
+    @Override
     @Test
     public void withoutTime() {
         Device device = createDevice();
-        Port port = new DefaultPort(device, PortNumber.portNumber(123L), true);
+        Port port = new DefaultPort(device, PortNumber.portNumber(123), true);
         long before = System.currentTimeMillis();
         DeviceEvent event = new DeviceEvent(DeviceEvent.Type.DEVICE_ADDED, device);
         long after = System.currentTimeMillis();
