예제 #1
0
 public void SetUp()
 {
     _fakeTransponderReceiver = Substitute.For <ITransponderReceiver>();
     _uut   = new Converter(_fakeTransponderReceiver);
     _event = null;
     _uut.ConvertDataEvent += (o, args) => { _event = args; };
 }
        public void FilterMethod(object sender, ConvertDataEvent e)
        {
            filterList = new List <Aircraft>();

            foreach (Aircraft data in e.ConvertData)
            {
                if (data.XCoordinate <= 85000 && data.YCoordinate <= 85000)
                {
                    filterList.Add(data);
                }
            }

            if (filterList.Count != 0)
            {
                FilterDataEvent?.Invoke(this, new FilterDataEvent(filterList));
            }
        }
        public void ConvertMethod(object sender, RawTransponderDataEventArgs e)
        {
            convertedDataList = new List <Aircraft>();

            foreach (var data in e.TransponderData)
            {
                string[] aircraftdata = new string[5];
                aircraftdata = data.Split(';');


                Aircraft aircraft = new Aircraft(aircraftdata[0], Convert.ToInt32(aircraftdata[1]),
                                                 Convert.ToInt32(aircraftdata[2]),
                                                 Convert.ToInt32(aircraftdata[3]), DateTime.ParseExact(aircraftdata[4], "yyyyMMddHHmmssfff",
                                                                                                       System.Globalization.CultureInfo.InvariantCulture));
                convertedDataList.Add(aircraft);
            }

            ConvertDataEvent?.Invoke(this, new ConvertDataEvent(convertedDataList));
        }