public void WhenCreatingProfile_ProfileShouldBeCreatedWithTwoPassedPlaces() { var id = Guid.NewGuid(); var userId = Guid.NewGuid(); var location1 = new GeoLocation(63.0001, 15.0001, 123.5); var location2 = new GeoLocation(63.0051, 15.051, 125); var location3 = new GeoLocation(63.0011, 15.0051, 123.5); var now = new DateTime(2016, 08, 12); var trackPoint1 = new TrackPoint(location1, 0.0, now); var trackPoint2 = new TrackPoint(location2, 100.0, now.AddSeconds(10)); var trackPoint3 = new TrackPoint(location3, 200.0, now.AddSeconds(20)); var track = new Track(Guid.NewGuid(), new TrackPoint[] { trackPoint1, trackPoint2, trackPoint3 }); var place = new Place(Guid.NewGuid(), userId, "Test place", "", location1, GeoPolygon.CreateRect(location1, 0.05)); var legs = new Leg[] { new Leg(trackPoint1, trackPoint3, 1.5, 1.5) }; var startSplit = new ResultSplit(trackPoint1); var result = new Result(new Athlete(userId, "IAthlete"), new ResultSplit[] { startSplit, new ResultSplit(trackPoint3, startSplit, startSplit) }); PlaceRepository.Add(place); When(new CreateProfile(id, userId, Guid.Empty, "First", track)); Then(new ProfileCreated(id, userId, Guid.Empty, "First", DateTimeProvider.Now, track, 1.5, 1.5, trackPoint2, trackPoint1, null, new ProfilePlace[] { new ProfilePlace(place, trackPoint1, true, true), new ProfilePlace(place, trackPoint3, true, true) }, legs, result)); }
public async Task Add_ShouldCreateNewPlaceRecord() { var record = new PlaceEntity { Description = "Test entity", Id = Guid.NewGuid(), Title = "Sample", Location = new LocationEntity(10.22m, 44.53m) }; var added = await _repo.Add(record); added.Resource.Should().NotBeNull(); }
public void WhenCreatingProfile_ProfileShouldBeCreatedWithOnePassedPlace() { var id = Guid.NewGuid(); var userId = Guid.NewGuid(); var location = new GeoLocation(63.0001, 15.0001, 123.5); var trackPoint = new TrackPoint(location, 0.0, DateTime.Now); var track = new Track(Guid.NewGuid(), new TrackPoint[] { trackPoint }); var place = new Place(Guid.NewGuid(), userId, "Test place", "", location, GeoPolygon.CreateRect(location, 0.05)); var legs = new Leg[] { new Leg(trackPoint, trackPoint, 0.0, 0.0) }; var startSplit = new ResultSplit(trackPoint); var result = new Result(new Athlete(userId, "IAthlete"), new ResultSplit[] { startSplit, new ResultSplit(trackPoint, startSplit, startSplit) }); PlaceRepository.Add(place); var startProfilePlace = new ProfilePlace(place, trackPoint, true, true); var finishProfilePlace = new ProfilePlace(place, trackPoint, true, true); When(new CreateProfile(id, userId, Guid.Empty, "First", track)); Then(new ProfileCreated(id, userId, Guid.Empty, "First", DateTimeProvider.Now, track, 0.0, 0.0, trackPoint, trackPoint, null, new ProfilePlace[] { startProfilePlace, finishProfilePlace }, legs, result)); }
private async Task <Place> CreatePlace(Place place) { var created = await _placeRepository.Add(place); return(created); }
public async Task <bool> Add(Place newPlace) { _placeRepository.Add(newPlace); return(await _placeRepository.SaveChangesAsync()); }