public void Ev3PortViewModel_DataSendAndReceivedFinishedCallback_Test_005() { var Command = new Command_0C_00(); Command.ResData = new byte[8]; Command.ResData[0] = Command.Res; Command.ResData[1] = Command.SubRes; Command.ResData[2] = 0x00; Command.ResData[3] = 0x04; Command.ResData[4] = 0x00; Command.ResData[5] = 0x01; Command.ResData[6] = 0x02; Command.ResData[7] = 0x03; var Args = new NotifySendReceiveDataEventArgs(Command); this.TestVM.DataSendAndReceivedFinishedCallback(this, Args); Assert.AreEqual((Ev3MotorDevice.DEVICE_TYPE) 0x00, Ev3Brick.GetInstance().MotorDevice(0).DeviceType); Assert.AreEqual((Ev3MotorDevice.DEVICE_TYPE) 0x01, Ev3Brick.GetInstance().MotorDevice(1).DeviceType); Assert.AreEqual((Ev3MotorDevice.DEVICE_TYPE) 0x02, Ev3Brick.GetInstance().MotorDevice(2).DeviceType); Assert.AreEqual((Ev3MotorDevice.DEVICE_TYPE) 0x03, Ev3Brick.GetInstance().MotorDevice(3).DeviceType); }
public void BrickUpdater_50_00_Update_Test_005() { var Command = new Command_50_00(); Command.ResData = new byte[11]; Command.ResData[4] = 0x02; Command.ResData[5] = 0x00; Command.ResData[6] = 0x00; Command.ResData[7] = 0x00; Command.ResData[8] = 0x01; Command.ResData[9] = 0xFF; Command.ResData[10] = 0x7F; var Updater = new BrickUpdater_50_00(); var Brick = Ev3Brick.GetInstance(); Updater.Update(Command, Brick); Assert.IsTrue(Brick.SensorDevice(0).IsConnected); Assert.AreEqual((Ev3SensorDevice.INPORT) 0, Brick.SensorDevice(0).ConnectedPort); Assert.AreEqual(0x0000, Brick.SensorDevice(0).Value1); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_GYRO, Brick.SensorDevice(0).DeviceType); Assert.AreEqual((Ev3SensorDevice.INPORT) 1, Brick.SensorDevice(1).ConnectedPort); Assert.AreEqual(0x7FFF, Brick.SensorDevice(1).Value1); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_GYRO, Brick.SensorDevice(1).DeviceType); }
public void BrickDataUpdater_UpdateMotorViewModel_Test_003() { var Updater = new BrickDataUpdater(); var ViewModel = new Ev3ControllerMainViewModel(); var MotorDevice = new Ev3MotorDevice(); var Brick = Ev3Brick.GetInstance(); for (int index = 0; index < 4; index++) { ViewModel.MotorViewModelArray[index] = new Ev3MotorDeviceViewModel(); } MotorDevice.ConnectedPort = Ev3Device.OUTPORT.OUTPORT_C; MotorDevice.DeviceType = Ev3MotorDevice.DEVICE_TYPE.MOTOR_DEVICE_LARGE_MOTOR; MotorDevice.Power = 12; Brick.MotorDeviceArray[2] = MotorDevice; Updater.UpdateMotorViewModel(ViewModel); Assert.IsFalse(ViewModel.MotorViewModelArray[0].IsConnected); Assert.IsFalse(ViewModel.MotorViewModelArray[1].IsConnected); Assert.IsTrue(ViewModel.MotorViewModelArray[2].IsConnected); Assert.AreEqual("PORT_C", ViewModel.MotorViewModelArray[2].PortName); Assert.AreEqual("LARGE MOTOR", ViewModel.MotorViewModelArray[2].DeviceName); Assert.AreEqual(12, ViewModel.MotorViewModelArray[2].CurrentOutput); Assert.AreEqual("%", ViewModel.MotorViewModelArray[2].CurrentOutputUnit); Assert.IsFalse(ViewModel.MotorViewModelArray[3].IsConnected); }
public void BrickDataUpdater_UpdateSensorViewModel_Test_004() { var Updater = new BrickDataUpdater(); var ViewModel = new Ev3ControllerMainViewModel(); var SensorDevice = new Ev3SensorDevice(); var Brick = Ev3Brick.GetInstance(); for (int index = 0; index < 4; index++) { ViewModel.SensorViewModelArray[index] = new Ev3SensorDeviceViewModel(); } SensorDevice.ConnectedPort = Ev3Device.INPORT.INPORT_4; SensorDevice.DeviceType = Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_ULTRASONIC; SensorDevice.Value1 = 10; SensorDevice.Value2 = 11; SensorDevice.Value3 = 12; Brick.SensorDeviceArray[3] = SensorDevice; Updater.UpdateSensorViewModel(ViewModel); Assert.IsFalse(ViewModel.SensorViewModelArray[0].IsConnected); Assert.IsFalse(ViewModel.SensorViewModelArray[1].IsConnected); Assert.IsFalse(ViewModel.SensorViewModelArray[2].IsConnected); Assert.IsTrue(ViewModel.SensorViewModelArray[3].IsConnected); Assert.AreEqual("PORT_4", ViewModel.SensorViewModelArray[3].PortName); Assert.AreEqual("ULTRASONIC", ViewModel.SensorViewModelArray[3].DeviceName); Assert.AreEqual(10, ViewModel.SensorViewModelArray[3].SensorValue1); Assert.AreEqual(11, ViewModel.SensorViewModelArray[3].SensorValue2); Assert.AreEqual(12, ViewModel.SensorViewModelArray[3].SensorValue3); Assert.AreEqual("", ViewModel.SensorViewModelArray[3].SensorValue1Unit); Assert.AreEqual("", ViewModel.SensorViewModelArray[3].SensorValue2Unit); Assert.AreEqual("", ViewModel.SensorViewModelArray[3].SensorValue3Unit); }
public void BrickDataUpdater_UpdateMotorViewModel_Test_010() { var Updater = new BrickDataUpdater(); var ViewModel = new Ev3ControllerMainViewModel(); var MotorDevice1 = new Ev3MotorDevice(); var MotorDevice2 = new Ev3MotorDevice(); var Brick = Ev3Brick.GetInstance(); for (int index = 0; index < 4; index++) { ViewModel.MotorViewModelArray[index] = new Ev3MotorDeviceViewModel(); } MotorDevice1.Power = 13; MotorDevice2.Power = 23; Brick.MotorDeviceArray[2] = MotorDevice1; Brick.MotorDeviceArray[3] = MotorDevice2; Updater.UpdateMotorViewModel(ViewModel); Assert.IsFalse(ViewModel.MotorViewModelArray[0].IsConnected); Assert.IsFalse(ViewModel.MotorViewModelArray[1].IsConnected); Assert.IsTrue(ViewModel.MotorViewModelArray[2].IsConnected); Assert.AreEqual(13, ViewModel.MotorViewModelArray[2].CurrentOutput); Assert.AreEqual("%", ViewModel.MotorViewModelArray[2].CurrentOutputUnit); Assert.IsTrue(ViewModel.MotorViewModelArray[3].IsConnected); Assert.AreEqual(23, ViewModel.MotorViewModelArray[3].CurrentOutput); Assert.AreEqual("%", ViewModel.MotorViewModelArray[3].CurrentOutputUnit); }
public void BrickUpdater_0C_00_Update_Test_002() { var Command = new Command_0C_00(); Command.ResData = new byte[8]; Command.ResData[4] = 0xFE; Command.ResData[5] = 0xFF; Command.ResData[6] = 0x04; Command.ResData[7] = 0x00; var Updater = new BrickUpdater_0C_00(); var Brick = Ev3Brick.GetInstance(); Updater.Update(Command, Brick); Assert.AreEqual(Ev3Device.OUTPORT.OUTPORT_A, Brick.MotorDevice(0).ConnectedPort); Assert.AreEqual(Ev3Device.OUTPORT.OUTPORT_B, Brick.MotorDevice(1).ConnectedPort); Assert.AreEqual(Ev3Device.OUTPORT.OUTPORT_C, Brick.MotorDevice(2).ConnectedPort); Assert.AreEqual(Ev3Device.OUTPORT.OUTPORT_D, Brick.MotorDevice(3).ConnectedPort); Assert.AreEqual(DEVICE_TYPE.MOTOR_DEVICE_UNKNOWN, Brick.MotorDevice(0).DeviceType); Assert.AreEqual(DEVICE_TYPE.MOTOR_DEVICE_UNKNOWN, Brick.MotorDevice(1).DeviceType); Assert.AreEqual(DEVICE_TYPE.MOTOR_DEVICE_UNKNOWN, Brick.MotorDevice(2).DeviceType); Assert.AreEqual("PORT_A", Brick.MotorDevice(0).Port); Assert.AreEqual("PORT_B", Brick.MotorDevice(1).Port); Assert.AreEqual("PORT_C", Brick.MotorDevice(2).Port); Assert.AreEqual("Unknown", Brick.MotorDevice(0).Device); Assert.AreEqual("Unknown", Brick.MotorDevice(1).Device); Assert.AreEqual("Unknown", Brick.MotorDevice(2).Device); Assert.IsFalse(Brick.MotorDevice(0).IsConnected); Assert.IsFalse(Brick.MotorDevice(1).IsConnected); Assert.IsFalse(Brick.MotorDevice(2).IsConnected); }
public void BrickUpdater_20_01_Update_Test_022() { var Command = new Command_20_01(); Command.ResData = new byte[11]; Command.ResData[4] = 0x03; Command.ResData[5] = 0x01; Command.ResData[6] = 0x01; Command.ResData[7] = 0x02; Command.ResData[8] = 0x02; Command.ResData[9] = 0x03; Command.ResData[10] = 0x03; var Updater = new BrickUpdater_20_01(); var Brick = Ev3Brick.GetInstance(); Updater.Update(Command, Brick); Assert.IsFalse(Brick.SensorDevice(0).IsConnected); Assert.IsTrue(Brick.SensorDevice(1).IsConnected); Assert.AreEqual((Ev3Device.INPORT) 1, Brick.SensorDevice(1).ConnectedPort); Assert.AreEqual(0x01, Brick.SensorDevice(1).Value2); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_ULTRASONIC, Brick.SensorDevice(1).DeviceType); Assert.IsTrue(Brick.SensorDevice(2).IsConnected); Assert.AreEqual((Ev3Device.INPORT) 2, Brick.SensorDevice(2).ConnectedPort); Assert.AreEqual(0x02, Brick.SensorDevice(2).Value2); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_ULTRASONIC, Brick.SensorDevice(2).DeviceType); Assert.IsTrue(Brick.SensorDevice(3).IsConnected); Assert.AreEqual((Ev3Device.INPORT) 3, Brick.SensorDevice(3).ConnectedPort); Assert.AreEqual(0x03, Brick.SensorDevice(3).Value2); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_ULTRASONIC, Brick.SensorDevice(3).DeviceType); }
public void EV3Brick_MotorDevice_Test_002() { var Brick = Ev3Brick.GetInstance(); var Device = Brick.MotorDevice(3); Assert.AreEqual(0, Device.Power); Assert.AreEqual(0, Device.Counts); }
public void EV3Brick_SensorDevice_Test_002() { var Brick = Ev3Brick.GetInstance(); var SensorDevice = Brick.SensorDevice(3); Assert.AreEqual(0, SensorDevice.Value1); Assert.AreEqual(0, SensorDevice.Value2); Assert.AreEqual(0, SensorDevice.Value3); }
/// <summary> /// Update command param, steering output value. /// </summary> /// <param name="CommandParam">CommandParam object contains Steering value to set.</param> public override void UpdateCmdData(ICommandParam CommandParam = null) { if (null == CommandParam) { var Brick = Ev3Brick.GetInstance(); int Steer = Brick.Output.Steering; CommandParam = new CommandParam_16_00(Steer); } this.SetUp(CommandParam); }
/// <summary> /// Update command param, motor output. /// </summary> /// <param name="CommandParam"></param> public override void UpdateCmdData(ICommandParam CommandParam = null) { if (null == CommandParam) { var Brick = Ev3Brick.GetInstance(); byte Output = Convert.ToByte(Math.Abs(Brick.Output.MotorOutput)); byte Direction = (byte)(Brick.Output.MotorOutput > 0 ? 1 : 0); CommandParam = new CommandParam_12_00(Output, Direction); } this.SetUp(CommandParam); }
public void BrickUpdater_06_00_Update_Test_005() { var Command = new Command_06_00(); Command.ResData = new byte[5]; Command.ResData[4] = 0x04; var Brick = Ev3Brick.GetInstance(); var Updater = new BrickUpdater_06_00(); Updater.Update(Command, Brick); Assert.AreEqual(SafeState.SAFE_STATE.SAFE_STATE_UNKNOWN, Brick.State.State); Assert.AreEqual("ERROR", Brick.State.StateName); }
public void BrickUpdater_F0_00_Update_Test_005() { var Command = new Command_F0_00(); Command.ResData = new byte[16]; Command.ResData[0] = 0xF1; Command.ResData[1] = 0x00; Command.ResData[2] = 0x00; Command.ResData[3] = 0x0C; Command.ResData[4] = 0x50; Command.ResData[5] = 0x04; Command.ResData[6] = 0x02; Command.ResData[7] = 0x03; Command.ResData[8] = 0x04; Command.ResData[9] = 0x05; Command.ResData[10] = 0x00; Command.ResData[11] = 0x00; Command.ResData[12] = 0x00; Command.ResData[13] = 0x00; Command.ResData[14] = 0x00; Command.ResData[15] = 0x00; var Brick = Ev3Brick.GetInstance(); var Updater = new BrickUpdater_F0_00(); Updater.Update(Command, Brick); ushort ExpectedAngle = 0x0302; ushort ExpectedApeed = 0x0504; Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_GYRO, Brick.SensorDevice(0).DeviceType); Assert.IsTrue(Brick.SensorDevice(0).IsConnected); Assert.AreEqual((int)((short)ExpectedAngle), Brick.SensorDevice(0).Value1); Assert.AreEqual((int)((short)ExpectedApeed), Brick.SensorDevice(0).Value2); Assert.AreEqual(0, Brick.SensorDevice(0).Value3); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_NO_DEVICE, Brick.SensorDevice(1).DeviceType); Assert.IsFalse(Brick.SensorDevice(1).IsConnected); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_NO_DEVICE, Brick.SensorDevice(2).DeviceType); Assert.IsFalse(Brick.SensorDevice(2).IsConnected); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_NO_DEVICE, Brick.SensorDevice(3).DeviceType); Assert.IsFalse(Brick.SensorDevice(3).IsConnected); }
public void BrickUpdater_F0_00_Update_Test_003() { var Command = new Command_F0_00(); Command.ResData = new byte[15]; Command.ResData[0] = 0xF1; Command.ResData[1] = 0x00; Command.ResData[2] = 0x00; Command.ResData[3] = 0x0B; Command.ResData[4] = 0x30; Command.ResData[5] = 0x03; Command.ResData[6] = 0xAA; Command.ResData[7] = 0x07; Command.ResData[8] = 0x55; Command.ResData[9] = 0x00; Command.ResData[10] = 0x00; Command.ResData[11] = 0x00; Command.ResData[12] = 0x00; Command.ResData[13] = 0x00; Command.ResData[14] = 0x00; var Brick = Ev3Brick.GetInstance(); var Updater = new BrickUpdater_F0_00(); Updater.Update(Command, Brick); ushort ExpectedAmbient = 0xAA; ushort ExpectedReflect = 0x55; Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_COLOR, Brick.SensorDevice(0).DeviceType); Assert.IsTrue(Brick.SensorDevice(0).IsConnected); Assert.AreEqual((int)((short)(ExpectedAmbient)), Brick.SensorDevice(0).Value1); Assert.AreEqual(7, Brick.SensorDevice(0).Value2); Assert.AreEqual((int)((short)(ExpectedReflect)), Brick.SensorDevice(0).Value3); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_NO_DEVICE, Brick.SensorDevice(1).DeviceType); Assert.IsFalse(Brick.SensorDevice(1).IsConnected); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_NO_DEVICE, Brick.SensorDevice(2).DeviceType); Assert.IsFalse(Brick.SensorDevice(2).IsConnected); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_NO_DEVICE, Brick.SensorDevice(3).DeviceType); Assert.IsFalse(Brick.SensorDevice(3).IsConnected); }
public void BrickUpdater_02_00_Update_Test_002() { var Command = new Command_04_00(); Command.ResData = new byte[6]; Command.ResData[4] = 0xAA; Command.ResData[5] = 0x55; var Updater = new BrickUpdater_02_00(); var Brick = Ev3Brick.GetInstance(); Updater.Update(Command, Brick); Assert.AreEqual(0x00, Brick.Version.Major); Assert.AreEqual(0x00, Brick.Version.Minor); }
public void EV3Brick_MotorDevice_Test_001() { var Brick = Ev3Brick.GetInstance(); var Device = Brick.MotorDevice(0); Assert.AreEqual(0, Device.Power); Assert.AreEqual(0, Device.Counts); Device.Power = 1; Device.Counts = 2; var SensorDevice2 = Brick.SensorDevice(0); Assert.AreEqual(1, Device.Power); Assert.AreEqual(2, Device.Counts); }
public void BrickUpdater_04_00_Update_Test_004() { var Command = new Command_04_00(); Command.ResData = new byte[8]; Command.ResData[4] = 0xFF; Command.ResData[5] = 0x7F; Command.ResData[6] = 0x00; Command.ResData[7] = 0x00; var Brick = Ev3Brick.GetInstance(); var Updater = new BrickUpdater_04_00(); Updater.Update(Command, Brick); Assert.AreEqual(32767, Brick.Battery.Voltage); Assert.AreEqual(0, Brick.Battery.Current); }
public void BrickUpdater_04_00_Update_Test_001() { var Command = new Command_04_00(); Command.ResData = new byte[8]; Command.ResData[4] = 0x01; Command.ResData[5] = 0x02; Command.ResData[6] = 0x03; Command.ResData[7] = 0x04; var Brick = Ev3Brick.GetInstance(); var Updater = new BrickUpdater_04_00(); Updater.Update(Command, Brick); Assert.AreEqual(0x0201, Brick.Battery.Voltage); Assert.AreEqual(0x0403, Brick.Battery.Current); }
public void BrickDataUpdater_UpdateViewModel_Test_001() { var Updater = new BrickDataUpdater(); var ViewModel = new Ev3ControllerMainViewModel(); var MotorDevice = new Ev3MotorDevice(); var SensorDevice = new Ev3SensorDevice(); var Brick = Ev3Brick.GetInstance(); for (int index = 0; index < 4; index++) { ViewModel.MotorViewModelArray[index] = new Ev3MotorDeviceViewModel(); ViewModel.SensorViewModelArray[index] = new Ev3SensorDeviceViewModel(); } MotorDevice.ConnectedPort = Ev3Device.OUTPORT.OUTPORT_A; MotorDevice.DeviceType = Ev3MotorDevice.DEVICE_TYPE.MOTOR_DEVICE_LARGE_MOTOR; MotorDevice.Power = 10; Brick.MotorDeviceArray[0] = MotorDevice; SensorDevice.ConnectedPort = Ev3Device.INPORT.INPORT_1; SensorDevice.DeviceType = Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_COLOR; SensorDevice.Value1 = 10; SensorDevice.Value2 = 11; SensorDevice.Value3 = 12; Brick.SensorDeviceArray[0] = SensorDevice; Updater.UpdateViewModel(ViewModel); Assert.IsTrue(ViewModel.MotorViewModelArray[0].IsConnected); Assert.AreEqual("PORT_A", ViewModel.MotorViewModelArray[0].PortName); Assert.AreEqual("LARGE MOTOR", ViewModel.MotorViewModelArray[0].DeviceName); Assert.AreEqual(10, ViewModel.MotorViewModelArray[0].CurrentOutput); Assert.AreEqual("%", ViewModel.MotorViewModelArray[0].CurrentOutputUnit); Assert.IsFalse(ViewModel.MotorViewModelArray[1].IsConnected); Assert.IsFalse(ViewModel.MotorViewModelArray[2].IsConnected); Assert.IsFalse(ViewModel.MotorViewModelArray[3].IsConnected); Assert.IsTrue(ViewModel.SensorViewModelArray[0].IsConnected); Assert.AreEqual("PORT_1", ViewModel.SensorViewModelArray[0].PortName); Assert.AreEqual("COLOR", ViewModel.SensorViewModelArray[0].DeviceName); Assert.AreEqual(10, ViewModel.SensorViewModelArray[0].SensorValue1); Assert.AreEqual(11, ViewModel.SensorViewModelArray[0].SensorValue2); Assert.AreEqual(12, ViewModel.SensorViewModelArray[0].SensorValue3); Assert.AreEqual("", ViewModel.SensorViewModelArray[0].SensorValue1Unit); Assert.AreEqual("", ViewModel.SensorViewModelArray[0].SensorValue2Unit); Assert.AreEqual("", ViewModel.SensorViewModelArray[0].SensorValue3Unit); Assert.IsFalse(ViewModel.SensorViewModelArray[1].IsConnected); Assert.IsFalse(ViewModel.SensorViewModelArray[2].IsConnected); Assert.IsFalse(ViewModel.SensorViewModelArray[3].IsConnected); }
public void Ev3PortViewModel_DataSendAndReceivedFinishedCallback_Test_015() { var Command = new Command_A0_00(); Command.ResData = new byte[5]; Command.ResData[0] = Command.Res; Command.ResData[1] = Command.SubRes; Command.ResData[2] = 0x00; Command.ResData[3] = 0x01; Command.ResData[4] = 0x03; var Args = new NotifySendReceiveDataEventArgs(Command); this.TestVM.DataSendAndReceivedFinishedCallback(this, Args); Assert.AreEqual((SafeState.SAFE_STATE) 0x03, Ev3Brick.GetInstance().State.State); }
public void BrickUpdater_20_00_Update_Test_013() { var Command = new Command_20_00(); Command.ResData = new byte[17]; Command.ResData[4] = 0x04; Command.ResData[5] = 0x03; Command.ResData[6] = 0x77; Command.ResData[7] = 0x88; Command.ResData[8] = 0x02; Command.ResData[9] = 0x55; Command.ResData[10] = 0x66; Command.ResData[11] = 0x01; Command.ResData[12] = 0x33; Command.ResData[13] = 0x44; Command.ResData[14] = 0x00; Command.ResData[15] = 0x11; Command.ResData[16] = 0x22; var Updater = new BrickUpdater_20_00(); var Brick = Ev3Brick.GetInstance(); Updater.Update(Command, Brick); Assert.IsTrue(Brick.SensorDevice(0).IsConnected); Assert.AreEqual((Ev3Device.INPORT) 0x00, (Brick.SensorDevice(0).ConnectedPort)); Assert.AreEqual(0x2211, (Brick.SensorDevice(0).Value1)); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_ULTRASONIC, Brick.SensorDevice(0).DeviceType); Assert.IsTrue(Brick.SensorDevice(1).IsConnected); Assert.AreEqual((Ev3Device.INPORT) 0x01, (Brick.SensorDevice(1).ConnectedPort)); Assert.AreEqual(0x4433, (Brick.SensorDevice(1).Value1)); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_ULTRASONIC, Brick.SensorDevice(1).DeviceType); Assert.IsTrue(Brick.SensorDevice(2).IsConnected); Assert.AreEqual((Ev3Device.INPORT) 0x02, (Brick.SensorDevice(2).ConnectedPort)); Assert.AreEqual(0x6655, (Brick.SensorDevice(2).Value1)); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_ULTRASONIC, Brick.SensorDevice(2).DeviceType); Assert.IsTrue(Brick.SensorDevice(3).IsConnected); Assert.AreEqual((Ev3Device.INPORT) 0x03, (Brick.SensorDevice(3).ConnectedPort)); Assert.AreEqual(0x8877, (Brick.SensorDevice(3).Value1)); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_ULTRASONIC, Brick.SensorDevice(3).DeviceType); }
public void BrickUpdater_F0_00_Update_Test_004() { var Command = new Command_F0_00(); Command.ResData = new byte[13]; Command.ResData[0] = 0xF1; Command.ResData[1] = 0x00; Command.ResData[2] = 0x00; Command.ResData[3] = 0x09; Command.ResData[4] = 0x40; Command.ResData[5] = 0x01; Command.ResData[6] = 0x01; Command.ResData[7] = 0x00; Command.ResData[8] = 0x00; Command.ResData[9] = 0x00; Command.ResData[10] = 0x00; Command.ResData[11] = 0x00; Command.ResData[12] = 0x00; var Brick = Ev3Brick.GetInstance(); var Updater = new BrickUpdater_F0_00(); Updater.Update(Command, Brick); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_TOUCH, Brick.SensorDevice(0).DeviceType); Assert.IsTrue(Brick.SensorDevice(0).IsConnected); Assert.AreEqual(1, Brick.SensorDevice(0).Value1); Assert.AreEqual(0, Brick.SensorDevice(0).Value2); Assert.AreEqual(0, Brick.SensorDevice(0).Value3); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_NO_DEVICE, Brick.SensorDevice(1).DeviceType); Assert.IsFalse(Brick.SensorDevice(1).IsConnected); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_NO_DEVICE, Brick.SensorDevice(2).DeviceType); Assert.IsFalse(Brick.SensorDevice(2).IsConnected); Assert.AreEqual( Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_NO_DEVICE, Brick.SensorDevice(3).DeviceType); Assert.IsFalse(Brick.SensorDevice(3).IsConnected); }
public void EV3Brick_SensorDevice_Test_001() { var Brick = Ev3Brick.GetInstance(); var SensorDevice = Brick.SensorDevice(0); Assert.AreEqual(0, SensorDevice.Value1); Assert.AreEqual(0, SensorDevice.Value2); Assert.AreEqual(0, SensorDevice.Value3); SensorDevice.Value1 = 1; SensorDevice.Value2 = 2; SensorDevice.Value3 = 3; var SensorDevice2 = Brick.SensorDevice(0); Assert.AreEqual(1, SensorDevice2.Value1); Assert.AreEqual(2, SensorDevice2.Value2); Assert.AreEqual(3, SensorDevice2.Value3); }
public void Ev3PortViewModel_DataSendAndReceivedFinishedCallback_Test_002() { var Command = new Command_02_00(); Command.ResData = new byte[6]; Command.ResData[0] = Command.Res; Command.ResData[1] = Command.SubRes; Command.ResData[2] = 0x00; Command.ResData[3] = 0x02; Command.ResData[4] = 0x11; Command.ResData[5] = 0x33; var Args = new NotifySendReceiveDataEventArgs(Command); this.TestVM.DataSendAndReceivedFinishedCallback(this, Args); Assert.AreEqual(0x11, Ev3Brick.GetInstance().Version.Major); Assert.AreEqual(0x33, Ev3Brick.GetInstance().Version.Minor); }
public void BrickUpdater_10_00_Update_Test_001() { var Command = new Command_10_00(); Command.ResData = new byte[5]; Command.ResData[4] = 0x10; var Updater = new BrickUpdater_10_00(); var Brick = Ev3Brick.GetInstance(); Updater.Update(Command, Brick); Assert.IsFalse(Brick.MotorDevice(0).IsConnected); Assert.IsFalse(Brick.MotorDevice(1).IsConnected); Assert.IsFalse(Brick.MotorDevice(2).IsConnected); Assert.IsFalse(Brick.MotorDevice(3).IsConnected); Assert.AreEqual(0, Brick.MotorDevice(0).Power); Assert.AreEqual(0, Brick.MotorDevice(1).Power); Assert.AreEqual(0, Brick.MotorDevice(2).Power); Assert.AreEqual(0, Brick.MotorDevice(3).Power); }
public void Ev3PortViewModel_DataSendAndReceivedFinishedCallback_Test_003() { var Command = new Command_04_00(); Command.ResData = new byte[8]; Command.ResData[0] = Command.Res; Command.ResData[1] = Command.SubRes; Command.ResData[2] = 0x00; Command.ResData[3] = 0x04; Command.ResData[4] = 0x11; Command.ResData[5] = 0x22; Command.ResData[6] = 0x33; Command.ResData[7] = 0x44; var Args = new NotifySendReceiveDataEventArgs(Command); this.TestVM.DataSendAndReceivedFinishedCallback(this, Args); Assert.AreEqual(0x2211, Ev3Brick.GetInstance().Battery.Voltage); Assert.AreEqual(0x4433, Ev3Brick.GetInstance().Battery.Current); }
public void BrickUpdater_50_00_Update_Test_004() { var Command = new Command_50_01(); Command.ResData = new byte[8]; Command.ResData[4] = 0x01; Command.ResData[5] = 0x03; Command.ResData[6] = 0x00; Command.ResData[7] = 0x80; var Updater = new BrickUpdater_50_01(); var Brick = Ev3Brick.GetInstance(); Updater.Update(Command, Brick); Assert.IsTrue(Brick.SensorDevice(3).IsConnected); Assert.AreEqual((Ev3SensorDevice.INPORT) 3, Brick.SensorDevice(3).ConnectedPort); Assert.AreEqual(-32768, Brick.SensorDevice(3).Value2); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_GYRO, Brick.SensorDevice(3).DeviceType); }
public void BrickUpdater_0E_00_Update_Test_003() { var Command = new Command_0E_00(); Command.ResData = new byte[8]; Command.ResData[4] = 0x07; Command.ResData[5] = 0x05; Command.ResData[6] = 0x06; Command.ResData[7] = 0xFF; var Updater = new BrickUpdater_0E_00(); var Brick = Ev3Brick.GetInstance(); Updater.Update(Command, Brick); Assert.AreEqual(Ev3Device.INPORT.INPORT_1, Brick.SensorDevice(0).ConnectedPort); Assert.AreEqual(Ev3Device.INPORT.INPORT_2, Brick.SensorDevice(1).ConnectedPort); Assert.AreEqual(Ev3Device.INPORT.INPORT_3, Brick.SensorDevice(2).ConnectedPort); Assert.AreEqual(Ev3Device.INPORT.INPORT_4, Brick.SensorDevice(3).ConnectedPort); Assert.AreEqual(Ev3SensorDevice.DEVICE_TYPE.SENSOR_DEVICE_UNKNOWN, Brick.SensorDevice(0).DeviceType); Assert.IsFalse(Brick.SensorDevice(0).IsConnected); }
public void Ev3PortViewModel_DataSendAndReceivedFinishedCallback_Test_012() { var Command = new Command_40_00(); Command.ResData = new byte[7]; Command.ResData[0] = Command.Res; Command.ResData[1] = Command.SubRes; Command.ResData[2] = 0x00; Command.ResData[3] = 0x03; Command.ResData[4] = 0x01; Command.ResData[5] = 0x03; Command.ResData[6] = 0x01; var Args = new NotifySendReceiveDataEventArgs(Command); this.TestVM.DataSendAndReceivedFinishedCallback(this, Args); Assert.IsFalse(Ev3Brick.GetInstance().SensorDevice(0).IsConnected); Assert.IsFalse(Ev3Brick.GetInstance().SensorDevice(1).IsConnected); Assert.IsFalse(Ev3Brick.GetInstance().SensorDevice(2).IsConnected); Assert.IsTrue(Ev3Brick.GetInstance().SensorDevice(3).IsConnected); Assert.AreEqual(0x01, Ev3Brick.GetInstance().SensorDevice(3).Value1); }
/// <summary> /// Handle data sending and response receiving event. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public virtual void DataSendAndReceivedFinishedCallback(object sender, EventArgs e) { if (e is NotifySendReceiveDataEventArgs) { try { var Args = e as NotifySendReceiveDataEventArgs; Console.WriteLine(@"Snd:" + Ev3Utility.Buff2String(Args.SendData)); Console.WriteLine(@"Rcv:" + Ev3Utility.Buff2String(Args.RecvData)); var Command = Args.Command; var Updater = BrickUpdater.Factory(Command); Updater.Update(Command, Ev3Brick.GetInstance()); } catch (NullReferenceException ex) { Console.WriteLine(ex.Message); } catch (ArgumentException ex) { Console.WriteLine(ex.Message); } } }