public void GetAntennasAvailableForMe() { var builder = new AntennaBuilder(MaxGroundLenghtAvailable); var models = builder.GetWorkableBands(); Check.That(models.Extracting("Band")).ContainsExactly(60, 40, 30, 20, 17, 15, 12, 10); }
public void ThrowsAnExceptionIfNotEnoughSpace() { var builder = new AntennaBuilder(3); Check.ThatCode(() => { builder.GetWorkableBands(); }).Throws <NotEnoughSpaceException>(); }
public void GetMaxAntennaLength() { var builder = new AntennaBuilder(MaxGroundLenghtAvailable); var model = builder.GetMaxAntennaLength(); Check.That(Math.Round(model.Height, 2)).IsEqualTo(7.50); // meter Check.That(Math.Round(model.MinFrequency, 2)).IsEqualTo(4.75); // MHz Check.That(Math.Round(model.AntennaLength, 2)).IsEqualTo(29.99); // meter Check.That(Math.Round(model.GroundLength, 2)).IsEqualTo(25.97); // meter }
public void GetAntennasWithElevationAvailableForMe() { var builder = new AntennaBuilder(MaxGroundLenghtAvailable, 5); var models = builder.GetWorkableBands(); Check.That(models.Where(x => x.MaxElevation == 5).Extracting("Band")).ContainsExactly(17, 15, 12, 10); // 0.75 meter max of elevation for 60 meters band var sixtyMeters = models.Single(x => x.Band == 60); Check.That(sixtyMeters.MaxElevation).IsEqualTo(0.75); // 2.25 meters max of elevation for 40 meters band var fortyMeters = models.Single(x => x.Band == 40); Check.That(fortyMeters.MaxElevation).IsEqualTo(2.25); // 3.75 meters max of elevation for 30 meters band var thirtyMeters = models.Single(x => x.Band == 30); Check.That(thirtyMeters.MaxElevation).IsEqualTo(3.75); }