Example #1
0
        public void TestSQLiteRegularTask()
        {
            // Client Simulator
            var cs = this.sqliteConStr.Split(',');

            DbAccessorHelper.Init(new SQLiteDbAccessor(cs[0]));
            // Thread.Sleep(8000);
            ComDtuServer _server = new ComDtuServer();

            _server.Start();

            string      tid     = new Guid().ToString();
            List <uint> sensors = new List <uint> {
                (uint)17
            };
            DACTask ut = new DACTask(tid, 1, sensors, TaskType.INSTANT, this.OnTaskFinished); //

            tm = new DACTaskManager(_server, DbAccessorHelper.DbAccessor.QueryDtuNodes(), null, DtuType.Com);
            DACTaskManager.SensorMatcher = (sensor) =>
            {
                return(true);
            };
            //DACTaskManager.OnTimerDacFinished = (DACTaskResult r) =>
            //{
            //};

            tm.ArrangeTimedTask();
            Thread.Sleep(30000);
//            int r = tm.ArrangeInstantTask(tid, 1, sensors, this.OnTaskFinished, false);
//            System.Console.WriteLine("result = {0}", r);
        }
Example #2
0
        public void TestProcessResult()
        {
            DbAccessorHelper.Init(new MsDbAccessor("server=192.168.1.128;database=DW_iSecureCloud_Empty2.2;uid=sa;pwd=861004;pooling=false"));
            IDtuServer _dacServer;

            _dacServer = new GprsDtuServer(5005);
            DACTaskManager Dtm  = new DACTaskManager(_dacServer, DbAccessorHelper.DbAccessor.QueryDtuNodes(), null);
            var            rslt = new DACTaskResult();

            rslt.AddSensorResult(
                new SensorAcqResult {
                ErrorCode = 103, Sensor = new Sensor {
                    SensorID = 1, ProductId = 145
                }, Data = new LVDTData(560, 20)
            });
            rslt.AddSensorResult(
                new SensorAcqResult {
                Sensor = new Sensor {
                    SensorID = 2, ProductId = 145
                }, Data = new LVDTData(560, 20)
            });
            rslt.AddSensorResult(
                new SensorAcqResult {
                Sensor = new Sensor {
                    SensorID = 3, ProductId = 70
                }, Data = new TempHumidityData(180, -2)
            });

            new EtDataStatusConsumer(null)
            .ProcessResult(rslt);

            Assert.Pass();
        }
        public void Init(Dictionary <string, string> args)
        {
            if (_initialized)
            {
                return;
            }
            _initialized = true;
            string dbMapFile = args["sqlitedbcongxml"];

            Log.DebugFormat("Loading mapping from {0}", dbMapFile);
            var ldcx = new LoadDbConfigXml(dbMapFile);

            string[] connStrs = ldcx.GetSqlConnectionStrings("/config/databases");
            if (connStrs == null || connStrs.Length == 0)
            {
                return;
            }
            sqlHelper = SqlHelperFactory.Create(DbType.SQLite, connStrs[0]);
            DbAccessorHelper.Init(new SQLiteDbAccessor(connStrs[0]));
            //IList<DtuNode> nodes = DbAccessorHelper.DbAccessor.QueryDtuNodes(null);
            //_sensors = new Dictionary<uint, Sensor>();
            //foreach (DtuNode dn in nodes)
            //{
            //    if (dn.Sensors == null) continue;
            //    foreach (Sensor si in dn.Sensors)
            //    {
            //        _sensors[si.SensorID] = si;
            //    }
            //}
            //var catalog = new AssemblyCatalog(typeof(IDataSerializer).Assembly);
            //CompositionContainer cc = new CompositionContainer(catalog);
            //cc.ComposeParts(this);
            DataSourseTableInfo[] tableInfos = ldcx.GetDataSourseTableInfo("/config/databases");
            this.DoUpdateAsNecessary(tableInfos);
        }
Example #4
0
        public void TestHcGpsReadData()
        {
            DbAccessorHelper.Init(new MsDbAccessor(connstr));
            string filePath = @"FileData\Net01.csv";

            IFileSensorAdapter sa = new Gps_HC_SensorAdapter();
            int err;
            //Assert.IsNull(sa.Request(null,out err));

            Sensor s1 = new Sensor {
                SensorID = 1, ModuleNo = 1
            };
            var dat1 = sa.ReadData(s1, filePath);

            Assert.IsEmpty(dat1);

            Sensor s2 = new Sensor {
                SensorID = 2, ModuleNo = 2
            };
            var dat2 = sa.ReadData(s2, filePath);

            Assert.IsEmpty(dat2);

            Sensor s3 = new Sensor {
                SensorID = 3, ModuleNo = 3
            };
            var dat3 = sa.ReadData(s3, filePath);
            var act3 = Encoding.ASCII.GetString(dat3.First());
            var exp3 =
                "2,3,2014/8/14  6:54:43,30:49:59.31026N,121:31:23.58789E,3639542.8400,2680979.7673,28.0908,30:49:59.30982N,121:31:23.58559E,3639542.8124,2680979.7071,28.1878";

            Assert.AreEqual(exp3, act3);
        }
Example #5
0
        public DacService(string svrConfig, string busPath)
            : base(MyName, svrConfig, busPath)
        {
            string cs            = ConfigurationManager.AppSettings["SecureCloud"];
            int    dacServerPort = Convert.ToInt32(ConfigurationManager.AppSettings["Port"], 10);

            Log.InfoFormat("DBConnecting: {0}", cs);
            try
            {
                DbAccessorHelper.Init(new MsDbAccessor(cs));// 配置
            }
            catch (Exception ex)
            {
                Log.ErrorFormat("系统初始化失败:{0}", ex.Message);
                return;
            }

            etDataStatus = new DataStatusConsumer(this);
            DACTaskManager.OnDacTaskFinished += etDataStatus.ProcessResult;
            DACTaskManager.OnDacTaskFinished += this.WriteDacTaskResultToJsonFile;

            this._warningHelper = new WarningHelper();
            this._dacServer     = new GprsDtuServer(dacServerPort);
            this._fileServer    = new FileDtuServer();
            this.Dtm            = new DACTaskManager(this._dacServer, DbAccessorHelper.DbAccessor.QueryDtuNodes(), null); // DbAccessorHelper.DbAccessor.GetUnfinishedTasks()
            this.Dtm.SetFileServer(this._fileServer);
            // Push/Pull mode.
            this.Pull(null, this.OnMessageReceived);
            this.Response(this.ResponseHandler);
            this.Subscribe("cm", "/cm/datachanged/dtu/sensor/", this.OnSubscribed);
            ConsoleCtrlManager.Instance.RegCmd("reload", this.LoadHandler); // 注册重新加载传感器信息
            ConsoleCtrlManager.Instance.Exit += this.Instance_Exit;
            this._warningHelper.UpdateAllDtuStatus();
        }
Example #6
0
        public void TestGetDtuByNetworkType()
        {
            DbAccessorHelper.Init(new MsDbAccessor(connstr));
            IList <DtuNode> dtus = DbAccessorHelper.DbAccessor.QueryDtuNodes(null, NetworkType.gprs);

            Assert.IsTrue(dtus.Count > 0);
            //Assert.IsTrue(dtus.Count == 0);
        }
Example #7
0
        public void TestGetDtuByCode()
        {
            DbAccessorHelper.Init(new MsDbAccessor(connstr));
            DtuNode d0 = DbAccessorHelper.DbAccessor.QueryDtuNode("20120049");

            Assert.AreEqual((ushort)1, d0.DtuId);
            Assert.AreEqual("20120049", d0.DtuCode);
            Assert.AreEqual("K765集中采集站箱内", d0.Name);
        }
Example #8
0
        public void TestGetDtuByCode()
        {
            var cs = connstr.Split(',');

            DbAccessorHelper.Init(new SQLiteDbAccessor(cs[0]));
            DtuNode d0 = DbAccessorHelper.DbAccessor.QueryDtuNode("COM14");

            Assert.AreEqual((ushort)3, d0.DtuId);
            Assert.AreEqual("COM14", d0.DtuCode);
            Assert.AreEqual("", d0.Name);
        }
Example #9
0
        public void TestParseResult()
        {
            DbAccessorHelper.Init(new MsDbAccessor(connstr));// 配置
            // X U 0 0 3 0 0 2
            var bts = ValueHelper.StrToToHexByte("32 55 30 30 33 30 30 32");
            var s   = new Sensor()
            {
                ModuleNo = 2
            };

            s.AddParameter(new SensorParam(new FormulaParam())
            {
                Value = 0.002
            });
            var res = new SensorAcqResult
            {
                Response = bts,
                Sensor   = s
            };

            var sa = new FTM50SSmallLaserSensorAdapter();

            sa.ParseResult(ref res);
            var data = res.Data;

            Assert.IsNotNull(data);
            Assert.AreEqual(3.002, data.RawValues[0], 0.0000001);
            Assert.AreEqual(3000.000, data.PhyValues[0], 0.0000001);
            bts = ValueHelper.StrToToHexByte("32 55 30 46 33 59 30 32");
            Trace.WriteLine(res.Data.JsonResultData);
            res.Response = bts;
            try
            {
                sa.ParseResult(ref res);
            }
            catch
            {
            }

            Assert.AreEqual((int)Errors.ERR_DATA_PARSEFAILED, res.ErrorCode);
            Trace.WriteLine(res.Data.JsonResultData);
            bts          = ValueHelper.StrToToHexByte("32 56 30 46 33 59 30 32");
            res.Response = bts;
            sa.ParseResult(ref res);
            Assert.AreEqual((int)Errors.ERR_INVALID_DATA, res.ErrorCode);
            Trace.WriteLine(res.Data.JsonResultData);
        }
Example #10
0
        public void TestGetDtus()
        {
            DbAccessorHelper.Init(new MsDbAccessor(connstr));

            IList <DtuNode> dtus = DbAccessorHelper.DbAccessor.QueryDtuNodes();

            Assert.IsTrue(dtus != null);

            Assert.IsTrue(dtus.Count > 0);
            return;

            DtuNode d0 = dtus[0];

            Assert.AreEqual((ushort)1, d0.DtuId);
            Assert.AreEqual("20120049", d0.DtuCode);
            Assert.AreEqual("K765集中采集站箱内", d0.Name);
            Assert.AreEqual((uint)300, d0.DacInterval); // 5m
            // dtuId	sid	mno	cno	factor	PRODUCT_SENSOR_ID	PROTOCOL_CODE	name
            //  1	    17	9596	1	10	82	1503	K765左侧一阶平台1号测斜孔-下

            IList <Sensor> sensors = d0.Sensors;

            Assert.IsTrue(sensors.Count > 0);
            Sensor s1 = sensors[0];

            Assert.AreEqual((uint)1, s1.DtuID);
            Assert.AreEqual((uint)17, s1.SensorID);
            Assert.AreEqual((uint)9596, s1.ModuleNo);

            // param.
            SensorParam sp1 = s1.Parameters[0];

            Assert.AreEqual(-0.2969320000000, sp1.Value);

            SensorParam sp3 = s1.Parameters[2];

            Assert.AreEqual(600, sp3.Value);

            Assert.AreEqual("GPRS", d0.NetworkType.ToString().ToUpper());

            DtuNode dx = dtus.First(d => d.DtuCode == "20141015");

            //Assert.AreEqual("GNSS_NMEA0183", dx.NetworkType);
            Assert.AreEqual("hclocal", dx.NetworkType.ToString());
            Assert.AreEqual(@"C:\华测\HCMonitor 1.0\HCMonitor 1.0\Resultcsv\Net01.csv", dx.GetProperty("param1"));
            Assert.AreEqual(string.Empty, dx.GetProperty("param2"));
        }
Example #11
0
        public EtService(string svrConfig, string busPath)
            : base(MyName, svrConfig, busPath)
        {
            string cs            = ConfigurationManager.AppSettings["SecureCloud"];
            int    dacServerPort = Convert.ToInt32(ConfigurationManager.AppSettings["Port"], 10);

            Log.InfoFormat("DBConnecting: {0}", cs);
            try
            {
                DbAccessorHelper.Init(new MsDbAccessor(cs)); // 配置
                DACTaskResultConsumerService.Init();         // 消费
            }
            catch (Exception ex)
            {
                Log.ErrorFormat("系统初始化失败:{0}", ex.Message);
                return;
            }

            etDataStatus = new EtDataStatusConsumer(this);
            // 自定义消费者
            if (DACTaskResultConsumerService.Queues.Count == 0)
            {
                var queue = new DACTaskResultConsumerQueue(ConsumeType.Async);
                queue.Enqueue(etDataStatus);
                DACTaskResultConsumerService.AddComsumerQueue(queue);
            }
            else
            {
                DACTaskResultConsumerService.InsertComsumer(0, 2, etDataStatus);
                //DACTaskResultConsumerService.Queues[0].Insert(etDataStatus, 1);
            }

            _warningHelper = new WarningHelper();
            _dacServer     = new GprsDtuServer(dacServerPort);
            _fileServer    = new FileDtuServer();
            Dtm            = new DACTaskManager(_dacServer, DbAccessorHelper.DbAccessor.QueryDtuNodes(), null); // DbAccessorHelper.DbAccessor.GetUnfinishedTasks()
            Dtm.SetFileServer(_fileServer);
            // Push/Pull mode.
            Pull(null, OnMessageReceived);
            Response(ResponseHandler);
            Subscribe("cm", "/cm/datachanged/dtu/sensor/", OnSubscribed);
            ConsoleCtrlManager.Instance.RegCmd("reload", LoadHandler); // 注册重新加载传感器信息
            ConsoleCtrlManager.Instance.Exit += Instance_Exit;
            _warningHelper.UpdateAllDtuStatus();
        }
Example #12
0
        public void TestParseTempHumidityResponse()
        {
            DbAccessorHelper.Init(new MsDbAccessor(connstr)); // 配置
            TempHumiditySensorAdapter ci = new TempHumiditySensorAdapter();
            string bs = "FD0100230000";                       //0-5

            bs += "01";                                       // 命令号 6=01
            bs += "000055";                                   // Hum: 7-9: 01 H L  = 85
            bs += "41CC0000";                                 // Temp 10-13,float, = 25.5
            bs += "000000000000000000000000000000005EDF";
            byte[] buff = ValueHelper.ToBytes(bs);
            byte   crc  = ValueHelper.CheckCRC8(buff, 1, 29);

            buff[30] = crc;
            SensorAcqResult r = new SensorAcqResult
            {
                Response = buff,
                Sensor   = new Sensor()
                {
                    ModuleNo    = 35,
                    ChannelNo   = 1,
                    TableColums = "Humidity,Temperature"
                }
            };

            ci.ParseResult(ref r);
            var data = r.Data;

            Assert.IsNotNull(data);

            Assert.AreEqual(25.50, data.RawValues[0]);
            Assert.AreEqual(0.85, data.RawValues[1]);
            bs         = "Fc0100230000"; //0-5
            bs        += "01";           // 命令号 6=01
            bs        += "000055";       // Hum: 7-9: 01 H L  = 85
            bs        += "41CC0000";     // Temp 10-13,float, = 25.5
            bs        += "000000000000000000000000000000005EDF";
            buff       = ValueHelper.ToBytes(bs);
            crc        = ValueHelper.CheckCRC8(buff, 1, 29);
            buff[30]   = crc;
            r.Response = buff;
            ci.ParseResult(ref r);
            Assert.AreEqual((int)Errors.ERR_INVALID_DATA, r.ErrorCode);
        }
Example #13
0
        public void TestParseInclinometrResponse()
        {
            DbAccessorHelper.Init(new MsDbAccessor(connstr));// 配置
            ISensorAdapter ci = new GLSB40I70Laser_SensorAdapter();
            string         bs = "6406823030302e333131c1";

            byte[]          buff = ValueHelper.ToBytes(bs);
            SensorAcqResult r    = new SensorAcqResult()
            {
                Response = buff,
                Sensor   = new Sensor
                {
                    ModuleNo    = 100,
                    TableColums = "Angle_X,Angle_Y"
                }
            };

            r.Sensor.AddParameter(new SensorParam(new FormulaParam())
            {
                Value = 0.1
            });
            ci.ParseResult(ref r);
            var data = r.Data;

            Assert.IsNotNull(data);
            Assert.AreEqual(0.311, data.RawValues[0]);
            Assert.AreEqual(0.211, data.PhyValues[0]);

            bs         = "6406833030302e333131c1";
            buff       = ValueHelper.ToBytes(bs);
            r.Response = buff;
            ci.ParseResult(ref r);
            Assert.IsNotNull(data);
            Assert.AreEqual((int)Errors.ERR_INVALID_DATA, r.ErrorCode);
            bs         = "6406823030302e33";
            buff       = ValueHelper.ToBytes(bs);
            r.Response = buff;
            ci.ParseResult(ref r);
            Assert.IsNotNull(data);
            Assert.AreEqual((int)Errors.ERR_INVALID_DATA, r.ErrorCode);
        }
Example #14
0
        public void TestSaveTask()
        {
            DbAccessorHelper.Init(new MsDbAccessor(connstr));

            DACTask task = new DACTask();

            task.Status  = DACTaskStatus.RUNNING;
            task.DtuID   = 1;
            task.Sensors = new List <uint>(0);
            task.Sensors.Add(1);
            task.Sensors.Add(2);
            task.Sensors.Add(3);
            task.Saved     = false;
            task.Requester = "LIU";
            task.Requested = System.DateTime.Now;
            Assert.IsTrue(DbAccessorHelper.DbAccessor.SaveInstantTask(task) > 0);

            IList <DACTask> unfinished = DbAccessorHelper.DbAccessor.GetUnfinishedTasks();

            Assert.IsTrue(unfinished.Count > 0);
        }
Example #15
0
        public void TestTaskResult()
        {
            DACTaskResult r    = new DACTaskResult();
            DACTask       task = new DACTask();

            task.Status = DACTaskStatus.RUNNING;
            task.ID     = 3;
            task.DtuID  = 1;
            r.Task      = task;
            task.Status = DACTaskStatus.RUNNING;
            r.ErrorCode = 123;
            r.ErrorMsg  = "Hello error";
            r.Elapsed   = 321;
            r.Finished  = System.DateTime.Now;
            DbAccessorHelper.Init(new MsDbAccessor(connstr));
            Assert.IsTrue(DbAccessorHelper.DbAccessor.UpdateInstantTask(r) > 0);

            IList <DACTask> unfinished = DbAccessorHelper.DbAccessor.GetUnfinishedTasks(); //status=1/2
            DACTask         ti         = unfinished[0];

            Assert.AreEqual(ti.ID, 3);
            Assert.AreEqual(ti.Status, DACTaskStatus.RUNNING);
        }
Example #16
0
        public void TestGetDtus()
        {
            var cs = connstr.Split(',');

            DbAccessorHelper.Init(new SQLiteDbAccessor(cs[0]));

            IList <DtuNode> dtus = DbAccessorHelper.DbAccessor.QueryDtuNodes();

            Assert.IsTrue(dtus != null);

            Assert.IsTrue(dtus.Count > 0);

            DtuNode d0 = dtus[0];

            Assert.AreEqual((ushort)2, d0.DtuId);
            Assert.AreEqual("COM6", d0.DtuCode);
            Assert.AreEqual((uint)300, d0.DacInterval);  // 5m
            // dtuId	sid	mno	cno	factor	PRODUCT_SENSOR_ID	PROTOCOL_CODE	name
            //  1	    17	9596	1	10	82	1503	K765左侧一阶平台1号测斜孔-下

            IList <Sensor> sensors = d0.Sensors;

            Assert.IsTrue(sensors.Count > 0);
            Sensor s1 = sensors[0];

            Assert.AreEqual((uint)2, s1.DtuID);
            Assert.AreEqual((uint)1, s1.SensorID);
            Assert.AreEqual((uint)9877, s1.ModuleNo);

            DtuNode d91 = dtus.Last();
            Sensor  s89 = d91.FindSensor(89); //89号传感器. 参数, 2, 归属公式: 9, 类型 28,27
            // param.
            SensorParam sp0 = s89.Parameters[0];

            Assert.AreEqual(9, sp0.FormulaParam.FID);
            Assert.AreEqual(27, sp0.FormulaParam.PID);
        }
Example #17
0
        public void TestMsSqlInstantTask()
        {
            // Client Simulator
            client             = new DtuClient("127.0.0.1", 5055);
            client.OnReceived += OnMsg;
            GprsDtuServer _server = new GprsDtuServer(5055);

            _server.Start();
            client.Connect(20120049, "18651895100", "192.168.1.42");
            DbAccessorHelper.Init(new MsDbAccessor(this.mssqlConnStr));
            // Thread.Sleep(8000);
            string      tid     = new Guid().ToString();
            List <uint> sensors = new List <uint> {
                (uint)17
            };
            DACTask ut = new DACTask(tid, 1, sensors, TaskType.INSTANT, this.OnTaskFinished); //

            tm = new DACTaskManager(_server, DbAccessorHelper.DbAccessor.QueryDtuNodes(), DbAccessorHelper.DbAccessor.GetUnfinishedTasks());
            //  tm.DealDailyWork();
            //           Thread.Sleep(8000);
            int r = tm.ArrangeInstantTask(tid, 1, sensors, this.OnTaskFinished, false);

            System.Console.WriteLine("result = {0}", r);
        }
Example #18
0
        public void TestRemoteDtuRead()
        {
            this.Log.Debug("TestRemoteDtuRead");
            IList <DtuNode> _nodes = new List <DtuNode>();
            DtuNode         dn1    = new DtuNode
            {
                DtuCode     = "20140168",
                DacTimeout  = 2,  // 10s timeout
                DacInterval = 10, //30s interval
                DtuId       = 999,
                NetworkType = NetworkType.gprs,
                Type        = DtuType.Gprs
            };
            DtuNode dn2 = new DtuNode
            {
                DtuCode     = "20140167",
                DacTimeout  = 6,  // 10s timeout
                DacInterval = 20, //30s interval
                DtuId       = 998,
                NetworkType = NetworkType.gprs,
                Type        = DtuType.Gprs
            };
            Sensor s02 = new Sensor
            {
                ProtocolType = (uint)ProtocolType.Pressure_MPM,
                DtuID        = 999,
                SensorID     = 1,
                ModuleNo     = 2,
                ChannelNo    = 0,
                FactorType   = (uint)SafetyFactor.StressStrainPoreWaterPressure,
                Name         = "Pressure 02"
            };
            Sensor s27 = new Sensor
            {
                ProtocolType = (uint)ProtocolType.Pressure_MPM,
                DtuID        = 999,
                SensorID     = 2,
                ModuleNo     = 27,
                ChannelNo    = 0,
                FactorType   = (uint)SafetyFactor.StressStrainPoreWaterPressure,
                Name         = "Pressure 27"
            };

            Sensor s5135 = new Sensor
            {
                ProtocolType = (uint)ProtocolType.VibratingWire_OLD, //
                DtuID        = 998,
                SensorID     = 3,
                ModuleNo     = 5135,
                ChannelNo    = 1,
                FactorType   = (uint)SafetyFactor.Forcesteelbar,
                Name         = "Pressure 5135"
            };

            _nodes.Add(dn1);
            //_nodes.Add(dn2);
            dn1.AddSensor(s02);
            dn1.AddSensor(s27);
            dn1.AddSensor(s5135);

            GprsDtuServer _server = new GprsDtuServer(5056);

            this.Log.Debug("Server started.");
            string sqlconn = "server=localhost;database=iSecureCloud;uid=tester;pwd=Fas123";

            // sqlconn = "server=192.168.1.128;database=DW_iSecureCloud_Empty2.2;uid=sa;pwd=861004";
            this.Log.DebugFormat("Connect to db: {0}", sqlconn);
            DbAccessorHelper.Init(new MsDbAccessor(sqlconn));

            _server.Start();

            tm = new DACTaskManager(_server, _nodes, null, DtuType.Gprs);
            tm.ArrangeTimedTask();
            Console.ReadLine();
        }
Example #19
0
        public void TestParseInclinometrResponse()
        {
            DbAccessorHelper.Init(new MsDbAccessor(connstr));// 配置
            ISensorAdapter ci = new Inclination_ROD_SensorAdapter();
            string         bs = "001626c68184def28aa5120d61ffdacfbeffc22929f831";

            byte[] buff = ValueHelper.ToBytes(bs);
            var    r    = new SensorAcqResult()
            {
                ErrorCode = (int)Errors.SUCCESS,
                Response  = buff,
                Sensor    = new Sensor()
                {
                    ModuleNo    = 9926,
                    TableColums = "Angle_X,Angle_Y"
                }
            };

            ci.ParseResult(ref r);
            var data = r.Data;

            Assert.IsNotNull(r.Data);
            Assert.AreEqual(-2.437186f, data.RawValues[0]);
            Assert.AreEqual(-4.052695f, data.RawValues[1]);

            ci         = new Inclination_BOX_SensorAdapter();
            bs         = "001626c68184def28aa5120d61ffdacfbeffc22929f831";
            buff       = ValueHelper.ToBytes(bs);
            r.Response = buff;
            try
            {
                ci.ParseResult(ref r);
            }
            catch
            {
                throw;
            }

            Assert.IsNotNull(data);
            r.Response = null;
            ci.ParseResult(ref r);
            Assert.IsNotNull(data);
            bs         = "001626c68184def28aa5120d61ffdacfbeffc22929";
            buff       = ValueHelper.ToBytes(bs);
            r.Response = buff;
            ci.ParseResult(ref r);
            Assert.IsNotNull(data);


            bs   = "001526c68184def28aa5120d61ffdacfbeffc229290752";
            buff = ValueHelper.StrToToHexByte("00 15 22 28 81 8F EA 0D 71 0E 40 0F CB FF F5 08 77 FF F9 6B 7B 78 9E");
            r    = new SensorAcqResult()
            {
                ErrorCode = (int)Errors.SUCCESS,
                Response  = buff,
                Sensor    = new Sensor()
                {
                    ModuleNo    = 8744,
                    TableColums = "Angle_X,Angle_Y"
                }
            };
            ci.ParseResult(ref r);
            data = r.Data;
            Assert.IsNotNull(data);
            Assert.AreEqual(-0.718729f, data.RawValues[0], 0.000001);
            Assert.AreEqual(-0.431237f, data.RawValues[1], 0.000001);
        }
Example #20
0
 public void SetUp()
 {
     DbAccessorHelper.Init(new MsDbAccessor(cs));
 }