using FuRen_Sinopec_IcCardReader; using Microsoft.VisualStudio.TestTools.UnitTesting; using Edge.Core.Parser.BinaryParser.Util; using System.Linq; namespace FuRen_Sinopec_IcCardReader_Test { [TestClass] public class UnitTest1 { [TestMethod] public void Deserialize_TestMethod0() { var raw = "FA 00 E0 68 " + "00 17 " + "30 " + "20 19 12 24 23 02 31 00 01 01 01 01 F4 02 00 00 C0 3D"; var rawBytes = raw.ToBytes(); var p = new FuRen_Sinopec_IcCardReader.Parser(); var incoming = p.Deserialize(rawBytes.ToArray()) as PumpGenericInquiryCommand; Assert.AreEqual(true, incoming != null, "Should have type of message: PumpGenericInquiryCommand"); } [TestMethod] public void Deserialize_TestMethod3() { var raw = "FA 00 E0 43 " + "00 17 " + "30 " + "20 19 12 24 23 04 08 00 01 01 01 01 F4 02 00 00 85 D1"; var rawBytes = raw.ToBytes(); var p = new FuRen_Sinopec_IcCardReader.Parser(); var incoming = p.Deserialize(rawBytes.ToArray()) as PumpGenericInquiryCommand; Assert.AreEqual(true, incoming != null, "Should have type of message: PumpGenericInquiryCommand"); } [TestMethod] public void Deserialize_TestMethod4() { /* handle 0x31 with none sub message*/ var raw = " FA E0 00 4E 00 02 31 00 90 3D"; var rawBytes = raw.ToBytes(); var p = new FuRen_Sinopec_IcCardReader.Parser(); var incoming = p.Deserialize(rawBytes.ToArray()) as PumpStateChangeCommand; var explain = incoming.ToLogString(); Assert.AreEqual(true, incoming != null, "Should have type of message: PumpStateChangeRequest"); } [TestMethod] public void Deserialize_TestMethod5() { /* handle 0x31 with only card inserted sub message*/ var raw = "FA E0 00 50 00 21 " + "31 " + "01 01" + "07 10 01 02 04 00 00 26 24 23 99 27 00 00 00 09" + "FD D0 4F 71"; var rawBytes = raw.ToBytes(); var p = new FuRen_Sinopec_IcCardReader.Parser(); var incoming = p.Deserialize(rawBytes.ToArray()) as PumpStateChangeCommand; var explain = incoming.ToLogString(); Assert.AreEqual(true, incoming != null, "Should have type of message: PumpStateChangeRequest"); } [TestMethod] public void Deserialize_TestMethod6() { /* handle 0x31 with only nozzle operating sub message*/ var raw = "FA E0 00 43 00 13 " + "31 " + "01 02 07 00 00 07 CD 00 01 21 02 B3 0A 27"; var rawBytes = raw.ToBytes(); var p = new FuRen_Sinopec_IcCardReader.Parser(); var incoming = p.Deserialize(rawBytes.ToArray()) as PumpStateChangeCommand; var explain = incoming.ToLogString(); Assert.AreEqual(true, incoming != null, "Should have type of message: PumpStateChangeRequest"); } [TestMethod] public void Deserialize_TestMethod8() { var raw = "FA E0 00 44 00 96 " + "32 " + "00 00 58 AF 10 20 19" + "12 24 23 03 34 01 02 04 00 00 26 24 23 99 27" + "00 09 F6 03 00 07 CD 00 00 00 00 00 00 00 00" + "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + "00 00 00 00 00 00 00 00 00 00 00 00 00 00 07" + "10 52 00 01 21 02 B3 00 01 48 E5 E3 00 00 00" + "00 00 00 00 00 00 00 00 00 00 00 00 58 01"; var rawBytes = raw.ToBytes(); var p = new FuRen_Sinopec_IcCardReader.Parser(); var incoming = p.Deserialize(rawBytes.ToArray()) as PumpNotifyTransactionDoneCommand; var explain = incoming.ToLogString(); Assert.AreEqual(true, incoming != null, "Should have type of message: PumpNotifyTransactionDoneRequest"); } [TestMethod] public void Deserialize_TestMethod11() { var raw = "FA E0 00 44 " + "00 96 " + "32 00 00 58 AF 10 20 19 12 24 23 03 34 01 02 04 00 00 26 24 23 99 27 00 09 F6 03 00 07 CD 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 10 52 00 01 21 02 B3 00 01 48 E5 E3 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 58 01"; var rawBytes = raw.ToBytes(); var p = new FuRen_Sinopec_IcCardReader.Parser(); var incoming = p.Deserialize(rawBytes.ToArray()) as PumpNotifyTransactionDoneCommand; var explain = incoming.ToLogString(); Assert.AreEqual(true, incoming != null, "Should have type of message: PumpNotifyTransactionDoneRequest"); } } }