public void SinLineas() { var result = new MetroMapBuilder().Build(); Assert.That(result, Is.Not.Null); Assert.That(result.Lineas, Is.Not.Null); Assert.That(result.Lineas, Is.Empty); }
public void UnaEstacionSinLineas() { var estacion = MakeEstacion(); var result = new MetroMapBuilder() .WithStations(new[] { estacion }) .Build(); Assert.That(result.Estaciones, Is.Not.Empty); Assert.That(result.Estaciones[0], Is.SameAs(estacion)); Assert.That(result.Estaciones[0].Lineas, Is.Empty); }
public void UnaLineaSinEstaciones() { var linea = MakeLinea(); var lineas = new[] { linea }; var result = new MetroMapBuilder() .WithLines(lineas) .Build(); Assert.That(result.Lineas, Is.Not.Empty); Assert.That(result.Lineas[0], Is.SameAs(linea)); Assert.That(result.Lineas[0].Estaciones, Is.Empty); }
public void UnaLineaUnaEstacionSobreVertice() { var coord = fixture.Create <Coord>(); var linea = MakeLinea(coord); var estacion = MakeEstacion((Coord)coord.Clone()); var result = new MetroMapBuilder() .WithLines(new[] { linea }) .WithStations(new[] { estacion }) .Build(); Assert.That(result.Lineas.First().Estaciones, Does.Contain(estacion), "La línea debería tener una estación"); Assert.That(result.Estaciones.First().Lineas, Does.Contain(linea), "La estación debería pertenecer a una línea"); }
public void UnaLineaUnaEstacionLigeramenteFueraDelVertice() { var coordEstacion = new Coord(-99.1948807, 19.4905036); var estacion = MakeEstacion(coordEstacion); var coordLinea = coordEstacion.Offset(-0.0000000000001); var linea = MakeLinea(coordLinea); var result = new MetroMapBuilder() .WithLines(new[] { linea }) .WithStations(new[] { estacion }) .Build(); Assert.That(result.Lineas.First().Estaciones, Does.Contain(estacion), "La línea debería tener una estación"); Assert.That(result.Estaciones.First().Lineas, Does.Contain(linea), "La estación debería pertenecer a una línea"); }