public void TestGenerateMeasurableCellList_OneCell() { Mock <IOutdoorCell> outdoorCell = new Mock <IOutdoorCell>(); outdoorCell.MockOutdoorCell(112, 23, 0, 15.2, 18); compCells = new ComparableCell[1]; compCells[0] = new ComparableCell(1.111949, 90) { Budget = new LinkBudget(model), Cell = outdoorCell.Object }; measurablePoint.CellRepository.GenerateMeasurableCellList(compCells, measurablePoint); Assert.AreEqual(measurablePoint.CellRepository.CellList.Count, 1); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Cell, compCells[0]); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Budget, compCells[0].Budget); Assert.AreEqual(FakeComparableCell.Parse(measurablePoint.CellRepository.CellList[0].Cell).MetricCalculate(), 31.61297, eps); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Cell.AzimuthFactor(), 30, eps); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Budget.AntennaGain, 18); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Budget.TransmitPower, 15.2); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Cell.Cell.Height, 40); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].TiltFactor(), 1.259912, eps); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].ReceivedRsrp, -136.877439, eps); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].TiltAngle, 2.939795, eps); }
public void TestComparableCell_FourCells() { cellList = new FakeComparableCell[4]; cellList[0] = FakeComparableCell.Parse(new ComparableCell(0.2, 60)); cellList[1] = FakeComparableCell.Parse(new ComparableCell(0.2, 120)); cellList[2] = FakeComparableCell.Parse(new ComparableCell(0.4, 0)); cellList[3] = FakeComparableCell.Parse(new ComparableCell(0.2, 0)); Array.Sort(cellList); Assert.AreEqual(cellList[0].AzimuthAngle, 0); double metric0 = cellList[0].MetricCalculate(); Assert.AreEqual(metric0, -24.46395, eps, metric0.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(cellList[1].AzimuthAngle, 0); double metric1 = cellList[1].MetricCalculate(); Assert.AreEqual(metric1, -13.9279, eps, metric1.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(cellList[2].AzimuthAngle, 60); double metric2 = cellList[2].MetricCalculate(); Assert.AreEqual(metric2, -11.899295, eps, metric2.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(cellList[3].AzimuthAngle, 120); double metric3 = cellList[3].MetricCalculate(); Assert.AreEqual(metric3, 5.53605, eps, metric3.ToString(CultureInfo.InvariantCulture)); }
public void TestComparableCell_OneCell_With0azimuth_Metric() { FakeComparableCell c = FakeComparableCell.Parse(new ComparableCell(0.5, 0)); Assert.AreEqual(c.Distance, 0.5); double metric = 35 * Math.Log10(0.5); Assert.AreEqual(c.MetricCalculate(), metric); }
public void TestComparableCell_TwoCells() { cellList = new FakeComparableCell[2]; cellList[0] = FakeComparableCell.Parse(new ComparableCell(0.5, 0)); cellList[1] = FakeComparableCell.Parse(new ComparableCell(0.2, 1)); Assert.AreEqual(cellList[0].Distance, 0.5); Array.Sort(cellList); Assert.AreEqual(cellList[0].Distance, 0.2); Assert.AreEqual(cellList[1].AzimuthAngle, 0); }
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 TestImportCells_OneCell() { ImportOneCell(); Assert.AreEqual(measurablePoint.CellRepository.CellList.Count, 1); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Cell.Distance, 1.111949, eps); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Cell.AzimuthAngle, 90); Assert.AreEqual(FakeComparableCell.Parse(measurablePoint.CellRepository.CellList[0].Cell).MetricCalculate(), 31.612974, eps); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Cell.AzimuthFactor(), 30, eps); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Cell.Cell.Height, 40); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Budget.AntennaGain, 18); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].Budget.TransmitPower, 15.2); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].TiltFactor(), 1.259912, eps); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].ReceivedRsrp, -136.877442, eps); Assert.AreEqual(measurablePoint.CellRepository.CellList[0].TiltAngle, 2.939795, eps); }