public void PullsListOfSolarSystemsFromCrest_AndHandsThemOutByName() { var getSolarSystemIds = new Mock <IGetSolarSystemIds>(); getSolarSystemIds.Setup(x => x.Get()).Returns( new List <SolarSystemId> { new SolarSystemId(123, "Amarr"), new SolarSystemId(456, "Jita") }); var subject = new SolarSystemFactory(getSolarSystemIds.Object); var result = subject.GetSolarSystem("Amarr"); result.Id.Should().Be(123); }
public async Task StartAsync(CancellationToken cancellationToken) { // Create a new scope to retrieve scoped services using (var scope = _serviceProvider.CreateScope()) { // Get the DbContext instance var forecastContext = scope.ServiceProvider.GetRequiredService <ForecastContext>(); var solarSystem = SolarSystemFactory.GenerateSolarSystem(); var weatherControlSystem = new WeatherControlSystem(solarSystem); await forecastContext.Forecasts.AddRangeAsync(weatherControlSystem.CalculateForecast(3650)); await forecastContext.SaveChangesAsync(); } }
static void Main(string[] args) { System.Console.WriteLine("Se generará el pronóstico para 3650 días para el sistema compuesto por: "); System.Console.WriteLine("- Ferengi, que se desplaza con una velocidad angular de 1 grados/día en sentido horario y su distancia con respecto al sol es de 500Km"); System.Console.WriteLine("- Betasoide, que se desplaza con una velocidad angular de 3 grados/día en sentido horario y su distancia con respecto al sol es de 2000Km."); System.Console.WriteLine("- Vulcano, que se desplaza con una velocidad angular de 5 grados/día en sentido antihorario y su distancia con respecto al sol es de 1000Km."); var report = new ForecastReport(new WeatherControlSystem(SolarSystemFactory.GenerateSolarSystem()).CalculateForecast(3650)); System.Console.WriteLine("Se encontraron {0} períodos de sequía.", report.Periods[Weather.Drought]); System.Console.WriteLine("Se encontraron {0} períodos de lluvia.", report.Periods[Weather.Rainy]); System.Console.WriteLine("El día pico de lluvia será el {0}.", report.HeaviestDayOfRain); System.Console.WriteLine("Se encontraron {0} períodos de condiciones normales de presión y temperatura.", report.Periods[Weather.Normal]); System.Console.ReadLine(); }