public void arrayTest() { SerialPhyLayer serial = new SerialPhyLayer(); HdlcLinkLayer hdlc = new HdlcLinkLayer(); DlmsClient dlms = new DlmsClient(hdlc); LnDescriptor data = new LnDescriptor(11, new Obis("0.0.11.0.0.255"), 2); //set Holidays HelperTest.connect(serial, hdlc, dlms, data); data.setRequestData(new byte[] { 0x01, 0x02, 0x02, 0x03, 0x12, 0x00, 0x01, 0x09, 0x05, 0x07, 0xE2, 0x02, 0x0D, 0xFE, 0x11, 0x02, 0x02, 0x03, 0x12, 0x00, 0x02, 0x09, 0x05, 0xFF, 0xFF, 0x01, 0x01, 0xFF, 0x11, 0x02 }); HelperTest.disconnect(serial, dlms); serial.close(); Thread.Sleep(4000); data = new LnDescriptor(11, new Obis("0.0.11.0.0.255"), 2); //get Holidays HelperTest.connect(serial, hdlc, dlms, data); data.getRequestData(); dlms.get(serial, data); var actual = data.getResponseData(); byte[] expected = { 0x01, 0x02, 0x02, 0x03, 0x12, 0x00, 0x01, 0x09, 0x05, 0x07, 0xE2, 0x02, 0x0D, 0xFE, 0x11, 0x02, 0x02, 0x03, 0x12, 0x00, 0x02, 0x09, 0x05, 0xFF, 0xFF, 0x01, 0x01, 0xFF, 0x11, 0x02 }; HelperTest.disconnect(serial, dlms); CollectionAssert.AreEqual(expected, actual); }
public void visibleStringTest() { SerialPhyLayer serial = new SerialPhyLayer(); HdlcLinkLayer hdlc = new HdlcLinkLayer(); DlmsClient dlms = new DlmsClient(hdlc); LnDescriptor data = new LnDescriptor(1, new Obis("0.1.96.1.146.255"), 2); //Brazil firmware version number HelperTest.connect(serial, hdlc, dlms, data); data.getRequestData(); dlms.get(serial, data); var actual = data.getResponseData(); byte[] expected = { 0x0A, 0x06, 0x31, 0x37, 0x31, 0x31, 0x31, 0x34 }; HelperTest.disconnect(serial, dlms); CollectionAssert.AreEqual(expected, actual); data = new LnDescriptor(1, new Obis("0.0.96.1.0.255"), 2); //Meter address for communication HelperTest.connect(serial, hdlc, dlms, data); data.setRequestData(new byte[] { 0x0A, 0x0A, 0x36, 0x30, 0x30, 0x39, 0x32, 0x39, 0x30, 0x39, 0x35, 0x38 }); dlms.set(serial, data); data.getRequestData(); dlms.get(serial, data); actual = data.getResponseData(); expected = new byte[] { 0x0A, 0x0A, 0x36, 0x30, 0x30, 0x39, 0x32, 0x39, 0x30, 0x39, 0x35, 0x38 }; HelperTest.disconnect(serial, dlms); CollectionAssert.AreEqual(expected, actual); }
public void doubleLongTest() { SerialPhyLayer serial = new SerialPhyLayer(); HdlcLinkLayer hdlc = new HdlcLinkLayer(); DlmsClient dlms = new DlmsClient(hdlc); LnDescriptor data = new LnDescriptor(1, new Obis("1.0.31.128.49.255"), 2); //Read Configure clock correction factor HelperTest.connect(serial, hdlc, dlms, data); data.setRequestData(new byte[] { 0x05, 0x00, 0x00, 0x00, 0x00 }); dlms.set(serial, data); data.getRequestData(); dlms.get(serial, data); var actual = data.getResponseData(); byte[] expected = { 05, 00, 00, 00, 00 }; HelperTest.disconnect(serial, dlms); CollectionAssert.AreEqual(expected, actual); }
public void longUnsignedTest() { SerialPhyLayer serial = new SerialPhyLayer(); HdlcLinkLayer hdlc = new HdlcLinkLayer(); DlmsClient dlms = new DlmsClient(hdlc); LnDescriptor data = new LnDescriptor(3, new Obis("1.0.0.3.139.255"), 2); //set Auxiliary LED second pulse cycle HelperTest.connect(serial, hdlc, dlms, data); data.setRequestData(new byte[] { 0x12, 0x00, 0x00 }); dlms.set(serial, data); HelperTest.disconnect(serial, dlms); data = new LnDescriptor(3, new Obis("1.0.0.3.139.255"), 2); //get Auxiliary LED second pulse cycle HelperTest.connect(serial, hdlc, dlms, data); data.getRequestData(); dlms.get(serial, data); var actual = data.getResponseData(); byte[] expected = { 0x12, 0x00, 0x00 }; HelperTest.disconnect(serial, dlms); CollectionAssert.AreEqual(expected, actual); }
public void unsignedTest() { SerialPhyLayer serial = new SerialPhyLayer(); HdlcLinkLayer hdlc = new HdlcLinkLayer(); DlmsClient dlms = new DlmsClient(hdlc); LnDescriptor data = new LnDescriptor(3, new Obis("1.0.0.9.11.255"), 2); //set Clock Set the maximum offset HelperTest.connect(serial, hdlc, dlms, data); data.setRequestData(new byte[] { 0x11, 0x1F }); dlms.set(serial, data); HelperTest.disconnect(serial, dlms); data = new LnDescriptor(3, new Obis("1.0.0.9.11.255"), 2); //get Clock Set the maximum offset HelperTest.connect(serial, hdlc, dlms, data); data.getRequestData(); dlms.get(serial, data); var actual = data.getResponseData(); byte[] expected = { 0x11, 0x1F }; HelperTest.disconnect(serial, dlms); CollectionAssert.AreEqual(expected, actual); }
public void doubleLongUnsignedTest() { SerialPhyLayer serial = new SerialPhyLayer(); HdlcLinkLayer hdlc = new HdlcLinkLayer(); DlmsClient dlms = new DlmsClient(hdlc); LnDescriptor data = new LnDescriptor(1, new Obis("1.0.1.8.0.255"), 2); //set Active energy import register HelperTest.connect(serial, hdlc, dlms, data); data.setRequestData(new byte[] { 0x06, 0x00, 0x01, 0xC1, 0x95 }); dlms.set(serial, data); HelperTest.disconnect(serial, dlms); data = new LnDescriptor(3, new Obis("1.0.1.8.0.255"), 2); //get Active energy import register HelperTest.connect(serial, hdlc, dlms, data); data.getRequestData(); dlms.get(serial, data); var actual = data.getResponseData(); byte[] expected = { 0x06, 0x00, 0x01, 0xC1, 0x95 }; HelperTest.disconnect(serial, dlms); CollectionAssert.AreEqual(expected, actual); data = new LnDescriptor(1, new Obis("1.0.1.8.0.255"), 2); //set Active energy import register HelperTest.connect(serial, hdlc, dlms, data); data.setRequestData(new byte[] { 0x06, 0x00, 0x01, 0xC1, 0xFF }); dlms.set(serial, data); HelperTest.disconnect(serial, dlms); data = new LnDescriptor(3, new Obis("1.0.1.8.0.255"), 2); //get Active energy import register HelperTest.connect(serial, hdlc, dlms, data); data.getRequestData(); dlms.get(serial, data); actual = data.getResponseData(); expected = new byte[] { 0x06, 0x00, 0x01, 0xC1, 0xFF }; HelperTest.disconnect(serial, dlms); CollectionAssert.AreEqual(expected, actual); }