diff --git a/core/net/src/test/java/org/onlab/onos/net/device/impl/DistributedDeviceManagerTest.java b/core/net/src/test/java/org/onlab/onos/net/device/impl/DistributedDeviceManagerTest.java
index 6502373..54da6ce 100644
--- a/core/net/src/test/java/org/onlab/onos/net/device/impl/DistributedDeviceManagerTest.java
+++ b/core/net/src/test/java/org/onlab/onos/net/device/impl/DistributedDeviceManagerTest.java
@@ -2,7 +2,6 @@
 
 import org.junit.After;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.onlab.onos.event.Event;
 import org.onlab.onos.net.Device;
@@ -46,7 +45,6 @@
 /**
  * Test codifying the device service & device provider service contracts.
  */
-@Ignore
 public class DistributedDeviceManagerTest {
 
     private static final ProviderId PID = new ProviderId("of", "foo");
@@ -84,8 +82,12 @@
         // avoid accidentally joining other cluster
         config.getGroupConfig().setName(UUID.randomUUID().toString());
         // quickly form single node cluster
-        config.getNetworkConfig().getJoin().getMulticastConfig()
-            .setMulticastTimeoutSeconds(0);
+        config.getNetworkConfig().getJoin()
+            .getTcpIpConfig()
+            .setEnabled(true).setConnectionTimeoutSeconds(0);
+        config.getNetworkConfig().getJoin()
+            .getMulticastConfig()
+            .setEnabled(false);
         dstore.theInstance = Hazelcast.newHazelcastInstance(config);
         dstore.activate();
         mgr.store = dstore;
diff --git a/providers/openflow/device/src/test/java/org/onlab/onos/provider/of/device/impl/OpenFlowDeviceProviderTest.java b/providers/openflow/device/src/test/java/org/onlab/onos/provider/of/device/impl/OpenFlowDeviceProviderTest.java
index 296ae2b..c25ba8d 100644
--- a/providers/openflow/device/src/test/java/org/onlab/onos/provider/of/device/impl/OpenFlowDeviceProviderTest.java
+++ b/providers/openflow/device/src/test/java/org/onlab/onos/provider/of/device/impl/OpenFlowDeviceProviderTest.java
@@ -115,6 +115,7 @@
                 .setDesc(PD3)
                 .build();
         controller.listener.portChanged(DPID1, stat);
+        assertNotNull("never went throught the provider service", registry.descr);
         assertEquals("port status unhandled", 3, registry.ports.get(DID1).size());
     }
 
@@ -129,6 +130,7 @@
         DeviceProvider provider;
         Set<DeviceId> connected = new HashSet<DeviceId>();
         Multimap<DeviceId, PortDescription> ports = HashMultimap.create();
+        PortDescription descr = null;
 
         @Override
         public DeviceProviderService register(DeviceProvider provider) {
@@ -175,9 +177,8 @@
             @Override
             public void portStatusChanged(DeviceId deviceId,
                     PortDescription portDescription) {
-                System.err.println(deviceId + ":" + portDescription.toString());
-
-                System.err.println(ports.put(deviceId, portDescription));
+                ports.put(deviceId, portDescription);
+                descr = portDescription;
             }
 
         }
