public void TestComparableCell_ConstructTwoPoints_WithDifferentCells_DifferentAntennaGain()
        {
            StubOutdoorCell cell1 = new StubOutdoorCell(112, 23)
            {
                RsPower = 15.2,
                Pci = 30,
                AntennaGain = 17.5,
                Frequency = 100
            };
            StubOutdoorCell cell2 = new StubOutdoorCell(112.5, 23)
            {
                RsPower = 15.2,
                Pci = 30,
                AntennaGain = 18.5,
                Frequency = 100
            };
            StubGeoPoint point1 = new StubGeoPoint(cell1, 0.01);
            StubGeoPoint point2 = new StubGeoPoint(cell2, 0.01, 90);

            ComparableCell comparableCell1 = new ComparableCell(point1, cell1, budgetList);
            Assert.AreEqual(comparableCell1.Cell, cell1);
            Assert.AreEqual(comparableCell1.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell1.AzimuthAngle, 90);
            Assert.AreEqual(budgetList.Count, 1);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell1.Budget);

            ComparableCell comparableCell2 = new ComparableCell(point2, cell2, budgetList);
            Assert.AreEqual(comparableCell2.Cell, cell2);
            Assert.AreEqual(comparableCell2.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell2.AzimuthAngle, 0);
            Assert.AreEqual(budgetList.Count, 2);
            Assert.AreEqual(budgetList.ElementAt(1), comparableCell2.Budget);
        }
        public void TestComparableCell_TwoPoints_WithDifferentCells_SameBudget()
        {
            Mock <IOutdoorCell> outdoorCell1 = new Mock <IOutdoorCell>();

            outdoorCell1.MockOutdoorCell(112, 23, 0, 15.2, 18);
            Mock <IOutdoorCell> outdoorCell2 = new Mock <IOutdoorCell>();

            outdoorCell2.MockOutdoorCell(112.5, 23, 0, 15.2, 18);
            StubGeoPoint point1 = new StubGeoPoint(outdoorCell1.Object, 0.01);
            StubGeoPoint point2 = new StubGeoPoint(outdoorCell2.Object, 0.01, 90);

            ComparableCell comparableCell1 = new ComparableCell(point1, outdoorCell1.Object, budgetList, model);

            Assert.AreEqual(comparableCell1.Cell, outdoorCell1.Object);
            Assert.AreEqual(comparableCell1.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell1.AzimuthAngle, 90);

            ComparableCell comparableCell2 = new ComparableCell(point2, outdoorCell2.Object, budgetList, model);

            Assert.AreEqual(comparableCell2.Cell, outdoorCell2.Object);
            Assert.AreEqual(comparableCell2.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell2.AzimuthAngle, 0);

            Assert.AreEqual(budgetList.Count, 1);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell1.Budget);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell2.Budget);
        }
Esempio n. 3
0
 public void TestPositionAzimuth_45()
 {
     StubGeoPoint p1 = new StubGeoPoint(113.1, 23.1);
     StubGeoPoint p2 = new StubGeoPoint(113, 23);
     double angle = p1.PositionAzimuth(p2);
     Assert.IsTrue(angle > 44.99 && angle < 45.01);
 }
Esempio n. 4
0
        public void TestPositionAzimuth_SamePoint()
        {
            StubGeoPoint p1 = new StubGeoPoint(113, 23);
            StubGeoPoint p2 = new StubGeoPoint(113, 23);

            Assert.AreEqual(p1.PositionAzimuth(p2), 90);
        }
Esempio n. 5
0
        public void TestPositionAzimuth_270()
        {
            StubGeoPoint p1 = new StubGeoPoint(112.9, 23);
            StubGeoPoint p2 = new StubGeoPoint(113, 23);

            Assert.AreEqual(p1.PositionAzimuth(p2), 270);
        }
        public void TestComparableCell_ConstructTwoPoints_WithDifferentCells_SameBudget()
        {
            StubOutdoorCell cell1 = new StubOutdoorCell(112, 23)
            {
                RsPower     = 15.2,
                Pci         = 30,
                AntennaGain = 17.5,
                Frequency   = 100
            };
            StubOutdoorCell cell2 = new StubOutdoorCell(112.5, 23)
            {
                RsPower     = 15.2,
                Pci         = 30,
                AntennaGain = 17.5,
                Frequency   = 100
            };
            StubGeoPoint point1 = new StubGeoPoint(cell1, 0.01);
            StubGeoPoint point2 = new StubGeoPoint(cell2, 0.01, 90);

            ComparableCell comparableCell1 = new ComparableCell(point1, cell1, budgetList);

            Assert.AreEqual(comparableCell1.Cell, cell1);
            Assert.AreEqual(comparableCell1.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell1.AzimuthAngle, 90);
            Assert.AreEqual(budgetList.Count, 1);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell1.Budget);

            ComparableCell comparableCell2 = new ComparableCell(point2, cell2, budgetList);

            Assert.AreEqual(comparableCell2.Cell, cell2);
            Assert.AreEqual(comparableCell2.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell2.AzimuthAngle, 0);
            Assert.AreEqual(budgetList.Count, 1);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell2.Budget);
        }
Esempio n. 7
0
 public void TestTiltFromCell_near()
 {
     StubGeoPoint p = new StubGeoPoint(113.001, 23.001);
     double t1 = high.TiltFromCell(p);
     double t2 = low.TiltFromCell(p);
     Assert.IsTrue(Math.Abs(t1 - 15.969129) < 1E-6);
     Assert.IsTrue(Math.Abs(t2 - 5.448813) < 1E-6);
 }
Esempio n. 8
0
        public void TestPositionAzimuth_45()
        {
            StubGeoPoint p1    = new StubGeoPoint(113.1, 23.1);
            StubGeoPoint p2    = new StubGeoPoint(113, 23);
            double       angle = p1.PositionAzimuth(p2);

            Assert.IsTrue(angle > 44.99 && angle < 45.01);
        }
Esempio n. 9
0
 public void TestTiltFromCell_far()
 {
     StubGeoPoint p = new StubGeoPoint(113.002, 23.002);
     double t1 = high.TiltFromCell(p);
     double t2 = low.TiltFromCell(p);
     Assert.IsTrue(Math.Abs(t1 - 8.1426822) < 1E-6);
     Assert.IsTrue(Math.Abs(t2 - 2.7305803) < 1E-6);
 }
        public void TestInitialize()
        {
            StubGeoPoint point0 = new StubGeoPoint(112, 23);
            StubGeoPoint point  = new StubGeoPoint(point0, 0.01);

            measurablePoint.Longtitute = point.Longtitute;
            measurablePoint.Lattitute  = point.Lattitute;
        }
Esempio n. 11
0
        public void TestTiltFromCell_far()
        {
            StubGeoPoint p  = new StubGeoPoint(113.002, 23.002);
            double       t1 = high.TiltFromCell(p);
            double       t2 = low.TiltFromCell(p);

            Assert.IsTrue(Math.Abs(t1 - 8.1426822) < 1E-6);
            Assert.IsTrue(Math.Abs(t2 - 2.7305803) < 1E-6);
        }
Esempio n. 12
0
        public void TestTiltFromCell_near()
        {
            StubGeoPoint p  = new StubGeoPoint(113.001, 23.001);
            double       t1 = high.TiltFromCell(p);
            double       t2 = low.TiltFromCell(p);

            Assert.IsTrue(Math.Abs(t1 - 15.969129) < 1E-6);
            Assert.IsTrue(Math.Abs(t2 - 5.448813) < 1E-6);
        }
 public void TestComparableCell_OnePoint()
 {
     cellList = new FakeComparableCell[1];
     IGeoPoint<double> p = new StubGeoPoint(112, 22);
     IOutdoorCell c = new StubOutdoorCell(112.001, 22.001, 60);
     cellList[0] = FakeComparableCell.Parse(new ComparableCell(p, c));
     double dist = p.SimpleDistance(new StubGeoPoint(c.Longtitute, c.Lattitute));
     Assert.AreEqual(cellList[0].Distance, dist, 1E-6);
     Assert.AreEqual(cellList[0].AzimuthAngle, 165, 1E-6);
 }
        public void TestAngleFromCell_30()
        {
            StubGeoPoint p1 = new StubGeoPoint(113 + 0.1 * Math.Sqrt(3), 22.9);
            StubGeoPoint p2 = new StubGeoPoint(112.1, 22 - 0.1 * Math.Sqrt(3));
            double       a1 = cell1.AngleFromCellAzimuth(p1);
            double       a2 = cell2.AngleFromCellAzimuth(p2);

            Assert.AreEqual(a1, 75, e);
            Assert.AreEqual(a2, -120, e);
        }
        public void TestAngleFromCell_135(double[] p1Coor, double[] p2Coor,
                                          double expectedAngleFromCell1, double expectedAngleFromCell2)
        {
            StubGeoPoint p1 = new StubGeoPoint(p1Coor[0], p1Coor[1]);
            StubGeoPoint p2 = new StubGeoPoint(p2Coor[0], p2Coor[1]);
            double       a1 = cell1.AngleFromCellAzimuth(p1);
            double       a2 = cell2.AngleFromCellAzimuth(p2);

            Assert.AreEqual(a1, expectedAngleFromCell1, e);
            Assert.AreEqual(a2, expectedAngleFromCell2, e);
        }
        public void TestComparableCell_OnePoint()
        {
            cellList = new FakeComparableCell[1];
            IGeoPoint <double> p = new StubGeoPoint(112, 22);
            IOutdoorCell       c = new StubOutdoorCell(112.001, 22.001, 60);

            cellList[0] = FakeComparableCell.Parse(new ComparableCell(p, c));
            double dist = p.SimpleDistance(new StubGeoPoint(c.Longtitute, c.Lattitute));

            Assert.AreEqual(cellList[0].Distance, dist, 1E-6);
            Assert.AreEqual(cellList[0].AzimuthAngle, 165, 1E-6);
        }
Esempio n. 17
0
        public void TestComparableCell_OnePoint()
        {
            Mock<IOutdoorCell> outdoorCell = new Mock<IOutdoorCell>();
            outdoorCell.MockOutdoorCell(112, 23, 0, 15.2, 18);
            StubGeoPoint point = new StubGeoPoint(outdoorCell.Object, 0.01);

            ComparableCell comparableCell = new ComparableCell(point, outdoorCell.Object, budgetList, model);
            Assert.AreEqual(comparableCell.Cell, outdoorCell.Object);
            Assert.AreEqual(comparableCell.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell.AzimuthAngle, 90);
            Assert.AreEqual(comparableCell.Budget.AntennaGain, 18);
            Assert.AreEqual(comparableCell.Budget.TransmitPower, 15.2);
            Assert.AreEqual(budgetList.Count, 1);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell.Budget);
        }
        public void TestComparableCell_OnePoint()
        {
            Mock <IOutdoorCell> outdoorCell = new Mock <IOutdoorCell>();

            outdoorCell.MockOutdoorCell(112, 23, 0, 15.2, 18);
            StubGeoPoint point = new StubGeoPoint(outdoorCell.Object, 0.01);

            ComparableCell comparableCell = new ComparableCell(point, outdoorCell.Object, budgetList, model);

            Assert.AreEqual(comparableCell.Cell, outdoorCell.Object);
            Assert.AreEqual(comparableCell.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell.AzimuthAngle, 90);
            Assert.AreEqual(comparableCell.Budget.AntennaGain, 18);
            Assert.AreEqual(comparableCell.Budget.TransmitPower, 15.2);
            Assert.AreEqual(budgetList.Count, 1);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell.Budget);
        }
        public void TestTwoPoints_SamePoint()
        {
            IGeoPoint<double> op = new StubGeoPoint(p, 0.01, 45);
            IOutdoorCell[] cl =
            {
                new StubOutdoorCell(op, 180),
                new StubOutdoorCell(op, 225)
            };
            cellList = p.GenerateComparableCellList(cl).Select(FakeComparableCell.Parse).ToArray();
            Array.Sort(cellList);
            Assert.AreEqual(cellList[0].AzimuthAngle, 0, eps);
            Assert.AreEqual(cellList[1].AzimuthAngle, 45, eps);

            cellList[0].SetAzimuthAngle(p, 135);
            cellList[1].SetAzimuthAngle(p, 90);
            Array.Sort(cellList);
            Assert.AreEqual(cellList[0].AzimuthAngle, 135, eps);
            Assert.AreEqual(cellList[0].MetricCalculate(), 31.612974, eps, cellList[0].MetricCalculate().ToString(CultureInfo.InvariantCulture));
            Assert.AreEqual(cellList[1].AzimuthAngle, 90, eps);
            Assert.AreEqual(cellList[1].MetricCalculate(), 31.612974, eps, cellList[1].MetricCalculate().ToString(CultureInfo.InvariantCulture));
        }
        public void TestComparableCell_ConstructOnePoint()
        {
            StubOutdoorCell cell = new StubOutdoorCell(112, 23)
            {
                RsPower = 15.2,
                Pci = 30,
                AntennaGain = 17.5,
                Frequency = 100
            };
            StubGeoPoint point = new StubGeoPoint(cell, 0.01);

            ComparableCell comparableCell = new ComparableCell(point, cell, budgetList);
            Assert.AreEqual(comparableCell.Cell, cell);
            Assert.AreEqual(comparableCell.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell.AzimuthAngle, 90);
            Assert.AreEqual(comparableCell.Budget.AntennaGain, 17.5);
            Assert.AreEqual(comparableCell.Budget.TransmitPower, 15.2);
            Assert.AreEqual(comparableCell.PciModx, 0);
            Assert.AreEqual(budgetList.Count, 1);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell.Budget);
        }
        public void TestComparableCell_ConstructOnePoint()
        {
            StubOutdoorCell cell = new StubOutdoorCell(112, 23)
            {
                RsPower     = 15.2,
                Pci         = 30,
                AntennaGain = 17.5,
                Frequency   = 100
            };
            StubGeoPoint point = new StubGeoPoint(cell, 0.01);

            ComparableCell comparableCell = new ComparableCell(point, cell, budgetList);

            Assert.AreEqual(comparableCell.Cell, cell);
            Assert.AreEqual(comparableCell.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell.AzimuthAngle, 90);
            Assert.AreEqual(comparableCell.Budget.AntennaGain, 17.5);
            Assert.AreEqual(comparableCell.Budget.TransmitPower, 15.2);
            Assert.AreEqual(comparableCell.PciModx, 0);
            Assert.AreEqual(budgetList.Count, 1);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell.Budget);
        }
        public void TestTwoPoints_SamePoint()
        {
            IGeoPoint <double> op = new StubGeoPoint(p, 0.01, 45);

            IOutdoorCell[] cl =
            {
                new StubOutdoorCell(op, 180),
                new StubOutdoorCell(op, 225)
            };
            cellList = p.GenerateComparableCellList(cl).Select(FakeComparableCell.Parse).ToArray();
            Array.Sort(cellList);
            Assert.AreEqual(cellList[0].AzimuthAngle, 0, eps);
            Assert.AreEqual(cellList[1].AzimuthAngle, 45, eps);

            cellList[0].SetAzimuthAngle(p, 135);
            cellList[1].SetAzimuthAngle(p, 90);
            Array.Sort(cellList);
            Assert.AreEqual(cellList[0].AzimuthAngle, 135, eps);
            Assert.AreEqual(cellList[0].MetricCalculate(), 31.612974, eps, cellList[0].MetricCalculate().ToString(CultureInfo.InvariantCulture));
            Assert.AreEqual(cellList[1].AzimuthAngle, 90, eps);
            Assert.AreEqual(cellList[1].MetricCalculate(), 31.612974, eps, cellList[1].MetricCalculate().ToString(CultureInfo.InvariantCulture));
        }
Esempio n. 23
0
        public void TestComparableCell_TwoPoints_WithDifferentCells_SameBudget()
        {
            Mock<IOutdoorCell> outdoorCell1 = new Mock<IOutdoorCell>();
            outdoorCell1.MockOutdoorCell(112, 23, 0, 15.2, 18);
            Mock<IOutdoorCell> outdoorCell2 = new Mock<IOutdoorCell>();
            outdoorCell2.MockOutdoorCell(112.5, 23, 0, 15.2, 18);
            StubGeoPoint point1 = new StubGeoPoint(outdoorCell1.Object, 0.01);
            StubGeoPoint point2 = new StubGeoPoint(outdoorCell2.Object, 0.01, 90);

            ComparableCell comparableCell1 = new ComparableCell(point1, outdoorCell1.Object, budgetList, model);
            Assert.AreEqual(comparableCell1.Cell, outdoorCell1.Object);
            Assert.AreEqual(comparableCell1.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell1.AzimuthAngle, 90);

            ComparableCell comparableCell2 = new ComparableCell(point2, outdoorCell2.Object, budgetList, model);
            Assert.AreEqual(comparableCell2.Cell, outdoorCell2.Object);
            Assert.AreEqual(comparableCell2.Distance, 1.111949, eps);
            Assert.AreEqual(comparableCell2.AzimuthAngle, 0);

            Assert.AreEqual(budgetList.Count, 1);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell1.Budget);
            Assert.AreEqual(budgetList.ElementAt(0), comparableCell2.Budget);
        }
Esempio n. 24
0
 public void TestPositionAzimuth_SamePoint()
 {
     StubGeoPoint p1 = new StubGeoPoint(113, 23);
     StubGeoPoint p2 = new StubGeoPoint(113, 23);
     Assert.AreEqual(p1.PositionAzimuth(p2), 90);
 }
Esempio n. 25
0
 public void TestPositionAzimuth_270()
 {
     StubGeoPoint p1 = new StubGeoPoint(112.9, 23);
     StubGeoPoint p2 = new StubGeoPoint(113, 23);
     Assert.AreEqual(p1.PositionAzimuth(p2), 270);
 }
 public void TestInitialize()
 {
     StubGeoPoint point0 = new StubGeoPoint(112, 23);
     StubGeoPoint point = new StubGeoPoint(point0, 0.01);
     measurablePoint.Longtitute = point.Longtitute;
     measurablePoint.Lattitute = point.Lattitute;
 }