private void LetsDoIt(ATTask atTask) { ExecuteResult result = null; if (_context.IsAvaliable()) { ushort timeout = 10; Log.Info("_context valid, start robot"); try { result = new ConfigCommandExecutor().Execute(task, _context, timeout); result.ErrorMsg = "OK"; } catch (Exception ex) { Log.Error(ex.Message); result.ErrorMsg = "FAILED"; } } else { Log.Error("_context Busy, can't run."); result = new ExecuteResult { IsOK = false, ErrorCode = (int)Errors.ERR_NOT_CONNECTED, ErrorMsg = "FAILED", Task = atTask, Elapsed = 0, Finished = DateTime.Now }; foreach (var ac in atTask.AtCommands.AtCommands) { ATCommandResult r = new ATCommandResult(); r.GetJsonResult(ac.ToATString()); result.AddAtResult(r); } result.Task.Status = DACTaskStatus.FAIL; } if (atTask.Consumer != null) { atTask.Consumer(result); } this.Stop(); }
public void TestConfigCommandExecutor() { ConfigCommand cfgCmd = new ConfigCommand(); cfgCmd.AddRange(new List <ATCommand> { new SetIP("{'ip':'192.168.1.145'}"), new SetPort("{'port':5050}"), new SetReset() }); string dtu = "12345678"; GprsDtuServer _server = new GprsDtuServer(5055); _server.Start(); DacTaskContext context = new DacTaskContext() { DtuConnection = new GprsDtuConnection(_server), Node = new DtuNode() { DtuCode = dtu } }; Thread.Sleep(8000); //conn = (GprsDtuConnection) _server.GetConnection(new DtuNode{DtuCode = dtu}); if (context.DtuConnection != null && context.DtuConnection.IsAvaliable()) { var cce = new ConfigCommandExecutor(); //cce.Execute(conn, cfgCmd, 12000); ExecuteResult result = cce.Execute(null, context, 12000); // Assert.IsTrue(result.IsOK); } else { //Assert. } }