Example #1
0
        public void RunTelemetry_Completes()
        {
            var data = TestUtils.CreateBikeData();

            var ptr = Marshal.AllocHGlobal(Marshal.SizeOf(data));

            Marshal.StructureToPtr(data, ptr, true);

            var msgReceived = false;

            using (var rec = new BikeDataReceiver(BroadcastPort))
            {
                var recData = new GPBikes.SPluginsBikeDataEx_t();
                rec.OnRunTelemetry += (sender, args) =>
                {
                    msgReceived = true;
                    recData     = args.Data;
                };

                RunTelemetry(ptr, default(int), default(float), default(float));

                while (!msgReceived)
                {
                    Thread.Sleep(100);
                }

                TestUtils.AssertAreEqual(recData.BikeData, data);
            }
        }
Example #2
0
        public static GPBikes.SPluginsBikeDataEx_t CreateBikeDataEx()
        {
            var data = new GPBikes.SPluginsBikeDataEx_t
            {
                TrackTime     = 1.57f,
                TrackPosition = 0.657f,
                BikeData      = CreateBikeData()
            };

            return(data);
        }
        public void OnRunTelemetry(GPBikes.SPluginsBikeDataEx_t data)
        {
            var msg = ObjectToByteArray(data);

            SendMessage(msg);
        }
Example #4
0
 public static void AssertAreEqual(BikeData recData, GPBikes.SPluginsBikeDataEx_t data)
 {
     Assert.AreEqual(recData.TrackTime, data.TrackTime);
     Assert.AreEqual(recData.TrackPosition, data.TrackPosition);
     AssertAreEqual(recData, data.BikeData);
 }