Ejemplo n.º 1
0
 public static void Import(this List<DistanceDistribution> result,
     CdrCallsDistanceInfo cdrCallInfo, CdrDropsDistanceInfo cdrDropInfo,
     DropEcioDistanceInfo dropEcioInfo, GoodEcioDistanceInfo goodEcioInfo)
 {
     int[] distanceRange =
     {
         0,200,400,600,800,1000,1200,1400,1600,1800,2000,2200,2400,2600,2800,3000,4000,
         5000,6000,7000,8000,9000 };
     for (int i = 0; i < distanceRange.Length - 1; i++)
     {
         string propertyName = "DistanceTo" + distanceRange[i + 1] + "Info";
         PropertyInfo cdrCallsProperty = (typeof(CdrCallsDistanceInfo)).GetProperty(propertyName);
         PropertyInfo cdrDropsProperty = (typeof(CdrDropsDistanceInfo)).GetProperty(propertyName);
         PropertyInfo dropEcioProperty = (typeof(DropEcioDistanceInfo)).GetProperty(propertyName);
         PropertyInfo goodEcioProperty = (typeof(GoodEcioDistanceInfo)).GetProperty(propertyName);
         result.Add(new DistanceDistribution
         {
             DistanceDescription = distanceRange[i] + " -> " + distanceRange[i + 1] + "m",
             CdrCalls = (cdrCallInfo == null) ? 0 : (int) cdrCallsProperty.GetValue(cdrCallInfo),
             CdrDrops = (cdrDropInfo == null) ? 0 : (int) cdrDropsProperty.GetValue(cdrDropInfo),
             DropEcio = (dropEcioInfo == null) ? 0 : (double) dropEcioProperty.GetValue(dropEcioInfo),
             GoodEcio = (goodEcioInfo == null) ? 0 : (double) goodEcioProperty.GetValue(goodEcioInfo)*100
         });
     }
     result.Add(
         new DistanceDistribution
         {
             DistanceDescription = "9000m -> inf",
             CdrCalls = (cdrCallInfo == null) ? 0 : cdrCallInfo.DistanceToInfInfo,
             CdrDrops = (cdrDropInfo == null) ? 0 : cdrDropInfo.DistanceToInfInfo,
             DropEcio = (dropEcioInfo == null) ? 0 : dropEcioInfo.DistanceToInfInfo,
             GoodEcio = (goodEcioInfo == null) ? 0 : goodEcioInfo.DistanceToInfInfo * 100
         });
 }
Ejemplo n.º 2
0
        public void TestTopDrop2GCellCsv_CdrDropsDistanceInfo()
        {
            CdrDropsDistanceInfo info
                = stats[0].GenerateDistanceInfo <CdrDropsDistanceInfo, int>();

            info.AssertDistanceTest(new[] {
                5, 13, 61, 53, 15, 3, 3, 0, 2, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0
            });
        }
        public void Test_GenerateDistanceDistribution_CdrDropsDistanceInfo(
            int[] values)
        {
            CdrDropsDistanceInfo info = new CdrDropsDistanceInfo
            {
                DistanceTo200Info  = values[0],
                DistanceTo400Info  = values[1],
                DistanceTo600Info  = values[2],
                DistanceTo800Info  = values[3],
                DistanceTo1000Info = values[4],
                DistanceTo1200Info = values[5],
                DistanceTo1400Info = values[6],
                DistanceTo1600Info = values[7],
                DistanceTo1800Info = values[8],
                DistanceTo2000Info = values[9],
                DistanceTo2200Info = values[10],
                DistanceTo2400Info = values[11],
                DistanceTo2600Info = values[12],
                DistanceTo2800Info = values[13],
                DistanceTo3000Info = values[14],
                DistanceTo4000Info = values[15],
                DistanceTo5000Info = values[16],
                DistanceTo6000Info = values[17],
                DistanceTo7000Info = values[18],
                DistanceTo8000Info = values[19],
                DistanceTo9000Info = values[20],
                DistanceToInfInfo  = values[21]
            };

            statList.Add(new TopDrop2GCellDaily
            {
                CellId               = 1,
                SectorId             = 2,
                Frequency            = 3,
                StatTime             = DateTime.Today,
                CdrDropsDistanceInfo = info
            });
            mockRepository.SetupGet(x => x.Stats).Returns(statList.AsQueryable());
            List <DistanceDistribution> distribution = _service.GenerateDistanceDistribution();

            Assert.AreEqual(distribution.Count, 22);
            for (int i = 0; i < 22; i++)
            {
                Assert.AreEqual(distribution[i].CdrDrops, values[i]);
            }
        }
Ejemplo n.º 4
0
 public void Test_GenerateDistanceDistribution_CdrDropsDistanceInfo(
     int[] values)
 {
     CdrDropsDistanceInfo info = new CdrDropsDistanceInfo
     {
         DistanceTo200Info = values[0],
         DistanceTo400Info = values[1],
         DistanceTo600Info = values[2],
         DistanceTo800Info = values[3],
         DistanceTo1000Info = values[4],
         DistanceTo1200Info = values[5],
         DistanceTo1400Info = values[6],
         DistanceTo1600Info = values[7],
         DistanceTo1800Info = values[8],
         DistanceTo2000Info = values[9],
         DistanceTo2200Info = values[10],
         DistanceTo2400Info = values[11],
         DistanceTo2600Info = values[12],
         DistanceTo2800Info = values[13],
         DistanceTo3000Info = values[14],
         DistanceTo4000Info = values[15],
         DistanceTo5000Info = values[16],
         DistanceTo6000Info = values[17],
         DistanceTo7000Info = values[18],
         DistanceTo8000Info = values[19],
         DistanceTo9000Info = values[20],
         DistanceToInfInfo = values[21]
     };
     statList.Add(new TopDrop2GCellDaily
     {
         CellId = 1,
         SectorId = 2,
         Frequency = 3,
         StatTime = DateTime.Today,
         CdrDropsDistanceInfo = info
     });
     mockRepository.Setup(x => x.GetAll()).Returns(statList.AsQueryable());
     List<DistanceDistribution> distribution = _service.GenerateDistanceDistribution();
     Assert.AreEqual(distribution.Count, 22);
     for (int i = 0; i < 22; i++)
     {
         Assert.AreEqual(distribution[i].CdrDrops, values[i]);
     }
 }