@Override @Before public void setUp() throws Exception { super.setUp(); FloodlightModuleContext cntx = new FloodlightModuleContext(); tFSFW = new TestFlowSpaceFirewall(); cntx.addConfigParam(tFSFW, "configFile", "src/test/resources/good_config.xml"); MockThreadPoolService tp = new MockThreadPoolService(); RestApiServer restApi = new RestApiServer(); cntx.addService(IRestApiService.class, restApi); cntx.addService(IThreadPoolService.class, tp); cntx.addService(IFlowSpaceFirewallService.class, tFSFW); cntx.addService(IStorageSourceService.class, new MemoryStorageSource()); cntx.addService(IFloodlightProviderService.class, getMockFloodlightProvider()); restApi.init(cntx); tp.init(cntx); tFSFW.init(cntx); restApi.startUp(cntx); tp.startUp(cntx); tFSFW.startUp(cntx); IOFSwitch sw1 = createMockSwitch(1L); IOFSwitch sw2 = createMockSwitch(2L); Map<Long, IOFSwitch> switches = new HashMap<Long, IOFSwitch>(); switches.put(1L, sw1); switches.put(2L, sw2); getMockFloodlightProvider().setSwitches(switches); replay(sw1, sw2); }
public void doSetUp(HARole role) throws Exception { super.setUp(); FloodlightModuleContext fmc = new FloodlightModuleContext(); FloodlightProvider cm = new FloodlightProvider(); fmc.addConfigParam(cm, "role", role.toString()); controller = (Controller) cm.getServiceImpls().get(IFloodlightProviderService.class); fmc.addService(IFloodlightProviderService.class, controller); MemoryStorageSource memstorage = new MemoryStorageSource(); fmc.addService(IStorageSourceService.class, memstorage); RestApiServer restApi = new RestApiServer(); fmc.addService(IRestApiService.class, restApi); ThreadPool threadPool = new ThreadPool(); fmc.addService(IThreadPoolService.class, threadPool); MockSwitchManager switchService = new MockSwitchManager(); fmc.addService(IOFSwitchService.class, switchService); PktInProcessingTime ppt = new PktInProcessingTime(); fmc.addService(IPktInProcessingTimeService.class, ppt); // TODO: should mock IDebugCounterService and make sure // the expected counters are updated. DebugCounterServiceImpl debugCounterService = new DebugCounterServiceImpl(); fmc.addService(IDebugCounterService.class, debugCounterService); DebugEventService debugEventService = new DebugEventService(); fmc.addService(IDebugEventService.class, debugEventService); IShutdownService shutdownService = createMock(IShutdownService.class); shutdownService.registerShutdownListener(anyObject(IShutdownListener.class)); expectLastCall().anyTimes(); replay(shutdownService); fmc.addService(IShutdownService.class, shutdownService); verify(shutdownService); tp = new MockThreadPoolService(); fmc.addService(IThreadPoolService.class, tp); syncService = new MockSyncService(); fmc.addService(ISyncService.class, syncService); ppt.init(fmc); restApi.init(fmc); threadPool.init(fmc); memstorage.init(fmc); tp.init(fmc); debugCounterService.init(fmc); debugEventService.init(fmc); syncService.init(fmc); cm.init(fmc); ppt.startUp(fmc); restApi.startUp(fmc); threadPool.startUp(fmc); memstorage.startUp(fmc); tp.startUp(fmc); debugCounterService.startUp(fmc); debugEventService.startUp(fmc); syncService.startUp(fmc); cm.startUp(fmc); testPacket = new Ethernet() .setSourceMACAddress("00:44:33:22:11:00") .setDestinationMACAddress("00:11:22:33:44:55") .setEtherType(EthType.ARP) .setPayload( new ARP() .setHardwareType(ARP.HW_TYPE_ETHERNET) .setProtocolType(ARP.PROTO_TYPE_IP) .setHardwareAddressLength((byte) 6) .setProtocolAddressLength((byte) 4) .setOpCode(ARP.OP_REPLY) .setSenderHardwareAddress(Ethernet.toMACAddress("00:44:33:22:11:00")) .setSenderProtocolAddress(IPv4.toIPv4AddressBytes("192.168.1.1")) .setTargetHardwareAddress(Ethernet.toMACAddress("00:11:22:33:44:55")) .setTargetProtocolAddress(IPv4.toIPv4AddressBytes("192.168.1.2"))); byte[] testPacketSerialized = testPacket.serialize(); // The specific factory can be obtained from the switch, but we don't have one pi = (OFPacketIn) factory .buildPacketIn() .setBufferId(OFBufferId.NO_BUFFER) .setInPort(OFPort.of(1)) .setData(testPacketSerialized) .setReason(OFPacketInReason.NO_MATCH) .setTotalLen(testPacketSerialized.length) .build(); }