Began implementation of per-switch leader election using Curator
diff --git a/src/test/java/net/floodlightcontroller/mastership/MastershipManagerTest.java b/src/test/java/net/floodlightcontroller/mastership/MastershipManagerTest.java
new file mode 100644
index 0000000..f29f6e7
--- /dev/null
+++ b/src/test/java/net/floodlightcontroller/mastership/MastershipManagerTest.java
@@ -0,0 +1,49 @@
+package net.floodlightcontroller.mastership;
+
+import net.floodlightcontroller.core.module.FloodlightModuleContext;
+import net.floodlightcontroller.mastership.IMastershipService.MastershipCallback;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class MastershipManagerTest {
+ protected static Logger log = LoggerFactory.getLogger(MastershipManagerTest.class);
+ private MastershipManager mm;
+
+ @Before
+ public void setUp() throws Exception{
+ //MockFloodlightProvider fp = new MockFloodlightProvider();
+ FloodlightModuleContext fmc = new FloodlightModuleContext();
+
+ mm = new MastershipManager();
+
+ mm.init(fmc);
+ mm.startUp(fmc);
+
+ }
+
+ @Test
+ public void testAcquireMastership(){
+ MastershipCallback cb = new MastershipCallback(){
+ @Override
+ public void changeCallback(long dpid, boolean isMaster) {
+ log.info("Callback called!");
+ }
+ };
+
+ long dpid = 1L;
+
+ mm.acquireMastership(dpid, cb);
+
+ try {
+ Thread.sleep(2000);
+ } catch (InterruptedException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ log.debug("Is master? {}", mm.amMaster(dpid));
+ }
+}