📄 epcgnotifchansrctablerowstatuslistenertest.java
字号:
package org.fosstrak.reader.rprm.core.mgmt.agent.snmp.table ;
import junit.framework.TestCase;
import org.fosstrak.reader.rprm.core.NotificationChannel;
import org.fosstrak.reader.rprm.core.ReaderDevice;
import org.fosstrak.reader.rprm.core.Source;
import org.fosstrak.reader.rprm.core.mgmt.agent.snmp.SnmpAgent;
import org.fosstrak.reader.rprm.core.mgmt.agent.snmp.table.EpcgNotifChanSrcTableRowStatusListener;
import org.fosstrak.reader.rprm.core.mgmt.agent.snmp.table.RowObjectContainer;
import org.fosstrak.reader.rprm.core.mgmt.agent.snmp.table.SnmpTableRow;
import org.fosstrak.reader.rprm.core.mgmt.agent.snmp.table.SnmpTable.TableTypeEnum;
import org.fosstrak.reader.rprm.core.msg.MessageLayer;
import org.apache.log4j.xml.DOMConfigurator;
import org.snmp4j.agent.mo.snmp.RowStatus;
import org.snmp4j.agent.mo.snmp.RowStatusEvent;
/**
* Tests for the class <code>org.fosstrak.reader.mgmt.agent.snmp.table.EpcgNotifChanSrcTableRowStatusListener</code>.
*/
public class EpcgNotifChanSrcTableRowStatusListenerTest extends TestCase {
private EpcgNotifChanSrcTableRowStatusListener rowStatusListener;
private ReaderDevice readerDevice;
private NotificationChannel notifChan;
private Source source;
/**
* Sets up the test.
* @exception Exception An error occurred
*/
protected final void setUp() throws Exception {
super.setUp();
DOMConfigurator.configure("./target/classes/props/log4j.xml");
if (SnmpAgent.getInstance() == null) {
MessageLayer.main(new String[] { });
}
readerDevice = ReaderDevice.getInstance();
rowStatusListener = new EpcgNotifChanSrcTableRowStatusListener();
notifChan = NotificationChannel.create("EpcgNotifChanSrcTableRowStatusListenerTestNotifChan", "addr", readerDevice);
source = Source.create("EpcgNotifChanSrcTableRowStatusListenerTestSource", readerDevice);
}
/**
* Does the cleanup.
* @exception Exception An error occurred
*/
protected final void tearDown() throws Exception {
super.tearDown();
readerDevice.removeNotificationChannels(new NotificationChannel[] { notifChan });
readerDevice.removeSources(new Source[] { source });
}
/**
* Tests the <code>rowStatusChanged()</code> method.
*/
public final void testRowStatusChanged() {
SnmpTableRow row = SnmpTableRow.getSnmpTableRow(new RowObjectContainer(TableTypeEnum.EPCG_NOTIF_CHAN_SRC_TABLE, new Object[] { notifChan, source }));
RowStatusEvent event;
event = new RowStatusEvent(row, null, row, null, RowStatus.destroy, RowStatus.createAndGo);
rowStatusListener.rowStatusChanged(event);
assertNotNull(source.getAllNotificationChannels().get(notifChan.getName()));
event = new RowStatusEvent(row, null, row, null, RowStatus.active, RowStatus.notInService);
rowStatusListener.rowStatusChanged(event);
assertNull(source.getAllNotificationChannels().get(notifChan.getName()));
event = new RowStatusEvent(row, null, row, null, RowStatus.notInService, RowStatus.active);
rowStatusListener.rowStatusChanged(event);
assertNotNull(source.getAllNotificationChannels().get(notifChan.getName()));
event = new RowStatusEvent(row, null, row, null, RowStatus.active, RowStatus.destroy);
rowStatusListener.rowStatusChanged(event);
assertNull(source.getAllNotificationChannels().get(notifChan.getName()));
event = new RowStatusEvent(row, null, row, null, RowStatus.destroy, RowStatus.createAndWait);
rowStatusListener.rowStatusChanged(event);
assertNull(source.getAllNotificationChannels().get(notifChan.getName()));
event = new RowStatusEvent(row, null, row, null, RowStatus.notInService, RowStatus.active);
rowStatusListener.rowStatusChanged(event);
assertNotNull(source.getAllNotificationChannels().get(notifChan.getName()));
event = new RowStatusEvent(row, null, row, null, RowStatus.active, RowStatus.destroy);
rowStatusListener.rowStatusChanged(event);
assertNull(source.getAllNotificationChannels().get(notifChan.getName()));
}
/**
* Runs the test using the gui runner.
* @param args No arguments
*/
public static void main(String[] args) {
junit.swingui.TestRunner.run(EpcgNotifChanSrcTableRowStatusListenerTest.class);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -