public StarShipDTO GetStopsRequired(string distanceMgltText, string url) { int distanceMglt = ConvertDistance(distanceMgltText); StarShip starShip = this.starShipFacade.GetStarShips(url); IEnumerable <StarShipItem> starShipItems = starShip.StarShipItems; var starShipDTO = new StarShipDTO(); starShipDTO.NextPage = starShip.Next; foreach (var item in starShipItems) { int daysCount = this.DayConverter.ConvertToDays(item.Consumables); int mglt = item.Mglt.ToInt(); var starShipItemDTO = new StarShipItemDTO(); starShipItemDTO.Name = item.Name; starShipItemDTO.StopsRequired = this.calculationStops .CalculateStops(distanceMglt, mglt, daysCount); starShipDTO.StarShipItemDTO.Add(starShipItemDTO); } return(starShipDTO); }
public void TestMethodCreateStarship() { StarShip ship = new StarShip(); ship.CreateStarShip(12000, "TestShip", 20); Assert.IsNotNull(ship); }
public bool Save(User user, StarShip starShip) { try { using (StarContext starBattleDB = new StarContext()) { starBattleDB.StarShips.Add(starShip); starBattleDB.SaveChanges(); //user.StarShipId = starBattleDB.StarShips.FirstOrDefault(a => a.Name == starShip.Name).StarShipId; user.StarShipId = starBattleDB.StarShips.ToList().LastOrDefault(a => a.Name == starShip.Name).StarShipId; User userDelete = new User(); userDelete = starBattleDB.Users.FirstOrDefault(a => a.Name == user.Name && a.Password == user.Password); starBattleDB.Users.Remove(userDelete); starBattleDB.SaveChanges(); starBattleDB.Users.Add(user); starBattleDB.SaveChanges(); //var myUser = starBattleDB.Users // .Where(a => a.Name == user.Name && a.Password == user.Password) // .FirstOrDefault(); //myUser = user; // starBattleDB.SaveChanges(); return(true); } } catch (Exception ex) { return(false); } }
public string AddUser(string name) { Logger.Info($"Processing 'AddUser' [{name}]"); var user = new User { Name = name, Id = Guid.NewGuid().ToString(), Position = new Position(Global.Random.Next(300, 800), Global.Random.Next(100, 400), 0, 25), StarShip = new StarShip() { HitPoints = 100, Cooldown = new Cooldown() }, UserState = UserState.Alive, TimeToLive = 10_000_000 }; user.Shot += User_Shot; user.Dead += User_Dead; _mapObjectStore.AddMapObject(user); return(user.Id); }
public ActionResult DeleteConfirmed(int id) { StarShip starShip = db.StarShips.Find(id); db.StarShips.Remove(starShip); db.SaveChanges(); return(RedirectToAction("Index")); }
/// <summary> /// StarShip entity created with parameters needed to perform requested calculations /// </summary> /// <param name="starShip"></param> /// <returns></returns> private static StarShip ResolveStarship(JToken starShip) { StarShip ship = new StarShip(); ship.CreateStarShip(ResolveConsumables(starShip.SelectToken("consumables").ToString()), starShip.SelectToken("name").ToString(), ResolveMGLT(starShip.SelectToken("MGLT").ToString())); return(ship); }
public static void PresentCrew(StarShip st) { Console.WriteLine("Captain's name: " + st.Captain.Name + ", Age: " + st.Captain.Age); Console.WriteLine("Crew:"); foreach (var P in st.Crew) { Console.WriteLine(P.Name + ", Age: " + P.Age); } }
public void ItShouldReturnNullForAShipWithUknownConsumables() { var ship = new StarShip("ship ship", 10, null, TimeMeasure.Week); int distance = 1; var numberOfStops = ship.GetNumberOfStopsRequired(distance); Assert.IsNull(numberOfStops); }
public void ItShouldReturnNullForAShipWithUknownTimeMeasure() { var ship = new StarShip("ship ship", 20, 10, TimeMeasure.Unknown); int distance = 1; var numberOfStops = ship.GetNumberOfStopsRequired(distance); Assert.IsNull(numberOfStops); }
public StarShip Map(StarShipDTO dto) { var megaliths = this.GetMegaliths(dto); var consumables = this.GetConsumables(dto); var consumablesTimeMeasure = this.GetConsumablesTimeMeasure(dto); var starShip = new StarShip(dto.ShipName, megaliths, consumables, consumablesTimeMeasure); return(starShip); }
public void TestMethodCalculateStops() { int distance = 10000000; StarShip ship = new StarShip(); ship.CreateStarShip(12000, "TestShip", 20); int stops = ship.CalculateStops(distance); Assert.IsTrue(41 == ship.CalculateStops(distance)); }
public ActionResult Edit([Bind(Include = "Id,Name,CostInCredits,hyper_drive_rating")] StarShip starShip) { if (ModelState.IsValid) { db.Entry(starShip).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(starShip)); }
public void ItShouldReturn74StopsForY_Wing() { var ship = new StarShip("Y-Wing", 80, 1, TimeMeasure.Week); int givenDistanceInMegalights = 1000000; int expectedValue = 74; var numberOfStops = ship.GetNumberOfStopsRequired(givenDistanceInMegalights); Assert.AreEqual(expectedValue, numberOfStops); }
public void ItShouldReturn11StopsForRebelTransport() { var ship = new StarShip("Rebel Transport", 20, 6, TimeMeasure.Month); int givenDistanceInMegalights = 1000000; int expectedValue = 11; var numberOfStops = ship.GetNumberOfStopsRequired(givenDistanceInMegalights); Assert.AreEqual(expectedValue, numberOfStops); }
public ActionResult Create([Bind(Include = "Id,Name,CostInCredits,hyper_drive_rating")] StarShip starShip) { if (ModelState.IsValid) { db.StarShips.Add(starShip); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(starShip)); }
public bool Remove(StarShip t) { if (Contains(t)) { RemoveSingle(t); return(true); } return(false); }
public bool Add(StarShip t) { if (IsEnoughSpace(t)) { AddSingle(t); return(true); } return(false); }
public void ItShouldReturn9StopsForMillenniumFalcon() { var ship = new StarShip("Millennium Falcon", 75, 2, TimeMeasure.Month); int givenDistanceInMegalights = 1000000; int expectedValue = 9; var numberOfStops = ship.GetNumberOfStopsRequired(givenDistanceInMegalights); Assert.AreEqual(expectedValue, numberOfStops); }
public bool Move(StarShip t, IGeneralHolder <StarShip> generalHolder) { if (Contains(t) && generalHolder.Add(t)) { RemoveSingle(t); return(true); } return(false); }
public void GivenDistanceAndZeroConsumable_WhenCallCountStops_ShouldReturnZeroResult() { //arrange StarShip model = new StarShip { Consumables = "0 days", Mglt = 10 }; //act var result = model.CountStops(110); //assert result.Should().Be(0); }
/// <summary> /// Use this method to get the amount of stops required according parameters. /// </summary> /// <param name="mglt">String: Distance in mega lights (MGLT)</param> /// <param name="ship">StarShip: With autonomy attribute</param> /// <returns>Int: Amount stops required</returns> public static int CalculateShipStop(string mglt, StarShip ship) { int.TryParse(ship.autonomy.ToString(), out var autonomy); if (autonomy == 0) { throw new DivideByZeroException(); } var megaLights = Convert.ToInt32(mglt); return(megaLights / autonomy); }
public void GivenDistanceAndWeeksConsumable_WhenCallCountStops_ShouldReturnValidResult() { //arrange StarShip model = new StarShip { Consumables = "4 weeks", Mglt = 100 }; //act var result = model.CountStops(10000000); //assert result.Should().BeGreaterThan(0); result.Should().Be(148); }
public async Task <StarShip> GetStarShipAsync() { StarShip retVal = null; HttpClient client = new HttpClient(); var starshipResponse = await client.GetAsync("https://swapi.dev/api/starships/"); if (starshipResponse.IsSuccessStatusCode) { retVal = JsonConvert.DeserializeObject <StarShip>(await starshipResponse.Content.ReadAsStringAsync());; } return(retVal); }
// GET: StarShips/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } StarShip starShip = db.StarShips.Find(id); if (starShip == null) { return(HttpNotFound()); } return(View(starShip)); }
public void CalculateDistance() { StarShip starShip = new StarShip { Consumables = "2 months", MGLT = "75", Name = "X Winger" }; starShip.CalculateDistance(1000000); Assert.AreEqual(9, starShip.PlanetStops); }
public void CalculateWrongStopShouldFail() { StarShip starShip = new StarShip { Consumables = "2 months", MGLT = "75", Name = "Y Winger" }; starShip.CalculateDistance(1000000); Assert.AreNotEqual(3, starShip.PlanetStops); }
public async Task <ActionResult <StarShipDto> > GetStarShipsAsync() { try { var starshipsAlreadyUsedEntities = _unitOfWork.Starships.GetAll(); if (starshipsAlreadyUsedEntities.Count() > MaxRangeReset) { ResetGame(starshipsAlreadyUsedEntities); } var namesUsedBefore = starshipsAlreadyUsedEntities.Select(n => n.name).ToList(); var starShipModel = await _starShipService.GetRandomStarShipExcludingNamesUsedBefore(namesUsedBefore); if (starShipModel != null) { var starShipEntity = new StarShip() { Id = Guid.NewGuid(), name = starShipModel.name, Starship_class = starShipModel.Starship_class, Max_atmosphering_speed = ConvertStringToNumber(starShipModel.Max_atmosphering_speed), Cost_in_credits = ConvertStringToNumber(starShipModel.Cost_in_credits), Passengers = ConvertStringToNumber(starShipModel.Passengers), TotalFilms = starShipModel.Films.Count }; _unitOfWork.Starships.Add(starShipEntity); _unitOfWork.Save(); var starShipDto = new StarShipDto() { name = starShipModel.name, Starship_class = starShipModel.Starship_class, Max_atmosphering_speed = ConvertStringToNumber(starShipModel.Max_atmosphering_speed), Cost_in_credits = ConvertStringToNumber(starShipModel.Cost_in_credits), Passengers = ConvertStringToNumber(starShipModel.Passengers), Films = starShipModel.Films }; return(Ok(starShipDto)); } return(NotFound()); } catch (Exception e) { return(StatusCode(500, e.Message)); } }
public void CalculateDistanceUnknownFail() { StarShip starShip = new StarShip { Consumables = "unknown", MGLT = "unknown", Name = "X Winger" }; starShip.CalculateDistance(1000000); Assert.AreNotEqual(3, starShip.PlanetStops); }
public void ShowStarShip() { Console.Clear(); Console.Write("What is the ID of the Star Ship you want to see? "); string id = Console.ReadLine(); Console.WriteLine("Loading . . . "); StarShip starShip = _service.GetAsync <StarShip>($"https://swapi.dev/api/starships/{id}/").Result; Console.Clear(); Console.WriteLine($"\n\nThe name of the Star Ship is {starShip.Name}." + $" It cost {starShip.Cost_In_Credits} credits." + $" It was manufactured by {starShip.Manufacturer}."); Console.WriteLine("Press any key to continue . . . "); Console.ReadKey(); }
private static string ComputeStops(StarShip starShip, SpaceTrip spaceTrip) { if (!decimal.TryParse(starShip.Mglt, out decimal mglt)) { return("Not available (MGLT = 'unknown')"); } var consumables = starShip.Consumables.ToLower(); if (consumables == "unknown") { return("Not available (consumables = 'unknown')"); } var result = spaceTrip.GetResupplyStopsQuantity(mglt, consumables); return(FormatResult(result)); }
public void IncorrectAddingProperty() { var ss = new StarShip().AsDynamic; ss.X = 100; }
public void PlaceinLocalSystem() { var ls = new LocalSystem(); var ss = new StarShip(); ls.Place(ss, new PointF(1, 2)); var crd = ls.Resolve(ss); Assert.AreEqual(crd, new PointF(1, 2)); ls.Remove(ss); Assert.IsFalse(ls.Contains(ss)); ls.Place(ss, new PointF(6, 8)); crd = ls.Resolve(ss); Assert.AreEqual(crd, new PointF(6, 8)); }
public void ShiftInLocalSystem() { var ls = new LocalSystem(); var ss = new StarShip(); ls.Place(ss, new PointF(1, 2)); ls.Shift(ss, new PointF(10, 100)); var crd = ls.Resolve(ss); Assert.AreEqual(crd, new PointF(11, 102)); ls.Shift(ss, new PointF(1, -10)); crd = ls.Resolve(ss); Assert.AreEqual(crd, new PointF(12, 92)); }
public void SetOwner() { var ss = new StarShip().AsDynamic; var mod = new Module { Owner = ss }.AsDynamic; Assert.AreEqual(mod.Owner, ss); mod.SetOwner((IGameObject)null); Assert.IsNull(mod.Owner); mod.SetOwner(ss); Assert.AreEqual(mod.Owner, ss); }
public void LocalSystemWipeoffWithNoOwnedObj() { var ls = new Bunch(); var dls = ls.AsDynamic; var ss = new StarShip { IsActive = true }; var check = 0; ls.Add(ss); ls.Commands[GameObject.Cmd.WipeOff].ExecuteHnd += (obj, mnemoCode, args) => check++; ss.Commands[GameObject.Cmd.WipeOff].ExecuteHnd += (obj, mnemoCode, args) => check += 2; dls.WipeOff(); Assert.AreEqual(check, 1); Assert.IsTrue(ss.IsActive); }
public void GameObjectAddRemove() { var ls = new Bunch(); var ss = new StarShip(); ls.Execute(Bunch.Cmd.Add, ss); Assert.IsTrue(ls.Contains(ss)); Assert.IsTrue(ss.Owner != ls); ls.Execute(Bunch.Cmd.Remove, ss); Assert.IsTrue(!ls.Contains(ss)); Assert.IsTrue(ss.Owner != ls); }
public void AddingPropertyAndReadThis() { var ss = new StarShip().AsDynamic; using (InstanceController.BeginConstruct(ss)) { ss.X = 150; ss.X = 100; ss.Y = 500; ss.Z = ss.X + ss.Y; Assert.IsTrue(ss.Z == 600); ss.FooBarX = "100"; ss.FooBarY = "500"; Assert.IsTrue(ss.FooBarX + ss.Y == "100500"); } }
public void DistanceInLocalSystems() { var starSys = new LocalSystem { Level = 5, Resolution = 1000 }; var groupA = new LocalSystem { Level = 8, Resolution = 10 }; var groupB = new LocalSystem { Level = 8, Resolution = 10 }; StarShip ssA = new StarShip(), ssB = new StarShip(); starSys .PlaceAt(groupA, 0, 0) .PlaceAt(groupB, 3, 4); groupA.PlaceAt(ssA, 0, 0); groupB.PlaceAt(ssB, 0, 0); var m = new Mechanics(); var d = m.DistanceFor(ssA, ssB); Assert.IsTrue(d == 5000); }