public void ObtenerPuntoVentaConMayorBeneficio() { List<PuntoVenta> PuntosDeVenta = new List<PuntoVenta>(); PuntosDeVenta.Add(Madrid); PuntosDeVenta.Add(Barcelona); PuntosDeVenta.Add(Lisboa); CargaUtil carga = new CargaUtil(); carga.AddCarga("Vieras", 50); carga.AddCarga("Pulpo", 100); carga.AddCarga("Centollos", 50); PuntoVenta PuntoVenta = new Lonja(carga, PuntosDeVenta).ObtenerPuntoVentaConMayorBeneficio(); Assert.AreEqual("Lisboa", PuntoVenta.NombrePuntoVenta); //Gastos Madrid // Beneficios : 47500 // Gastos Transporte: 800 km x 2 = 1600 € + 5 cargar furgoneta = 1605 € // Gastos Depreciacion: 8% de Beneficios (47500) = 3800 € // Beneficios Totales: 47500 + (1605 - 3800) = 42095 € //Gastos Barcelona // Beneficios : 34500 // Gastos Transporte: 1100 km x 2 = 2200 € + 5 cargar furgoneta = 2205 € // Gastos Depreciacion: 11% de Beneficios (34500) = 3795 € // Beneficios Totales: 34500 + (2205 - 3795) = 32910€ //Gastos Lisboa // Beneficios : 65000 € // Gastos Transporte: 600 km x 2 = 1200 € + 5 cargar furgoneta = 1205 € // Gastos Depreciacion: 6% de Beneficios (65000) = 3900 € // Beneficios Totales: 65000 + (1205 - 3900) = 59895€ }
public int ObtenerBeneficioCarga(CargaUtil carga) { int Beneficio = 0; foreach(var c in carga.Carga) Beneficio += Tarifas.Single(x => x.Nombre == c.Key).Precio * c.Value; return Beneficio; }
public void CargarFurgoneta() { CargaUtil furgoneta = new CargaUtil(); furgoneta.AddCarga("Vieras", 20); Assert.AreEqual(1, furgoneta.Carga.Count); Assert.AreEqual("Vieras", furgoneta.Carga[0].Key); Assert.AreEqual(20, furgoneta.Carga[0].Value); }
public void ObtenerBeneficioDeMercado() { CargaUtil carga = new CargaUtil(); carga.AddCarga("Vieras", 50); carga.AddCarga("Pulpo", 100); carga.AddCarga("Centollos", 50); int BeneficioMadrid = Madrid.ObtenerBeneficioCarga(carga); Assert.AreEqual(47500,BeneficioMadrid); }
public void ElMaximoDeLaFurgonetaEsDe200Kg() { CargaUtil carga = new CargaUtil(); try { carga.AddCarga("Vieras", 201); Assert.Fail("Error en la carga"); } catch(ApplicationException ex) // exception personalizada CargaMaximaException { Assert.AreEqual("Carga máxima sobrepasada, solamente se puede carga 200 kg", ex.Message); } }
public Lonja(CargaUtil carga, List<PuntoVenta> puntosDeVenta) { PuntosDeVenta = puntosDeVenta; Carga = carga; }