public void MetricToImperialLengthTests() { Assert.AreEqual(5, MeasurementConverter.ConvertLength(12.7, MeasurementSystem.Metric, MeasurementSystem.Imperial), .001); Assert.AreEqual(3.5, MeasurementConverter.ConvertLength(8.89, MeasurementSystem.Metric, MeasurementSystem.Imperial), .001); Assert.AreEqual(4, MeasurementConverter.ConvertLength(10.16, MeasurementSystem.Metric, MeasurementSystem.Imperial), .001); }
public void ImperialToMetricLengthTests() { Assert.AreEqual(12.7, MeasurementConverter.ConvertLength(5, MeasurementSystem.Imperial, MeasurementSystem.Metric), .001); Assert.AreEqual(8.89, MeasurementConverter.ConvertLength(3.5, MeasurementSystem.Imperial, MeasurementSystem.Metric), .001); Assert.AreEqual(10.16, MeasurementConverter.ConvertLength(4, MeasurementSystem.Imperial, MeasurementSystem.Metric), .001); }
public void ConversionBetweenSameSourceAndDestinationTests() { Assert.AreEqual(18, MeasurementConverter.ConvertWeight(18, MeasurementSystem.Imperial, MeasurementSystem.Imperial), .01); Assert.AreEqual(6.577, MeasurementConverter.ConvertWeight(6.577, MeasurementSystem.Metric, MeasurementSystem.Metric), .01); Assert.AreEqual(14, MeasurementConverter.ConvertLength(14, MeasurementSystem.Imperial, MeasurementSystem.Imperial), .001); Assert.AreEqual(10.16, MeasurementConverter.ConvertLength(10.16, MeasurementSystem.Metric, MeasurementSystem.Metric), .001); }
public AppUserDTO Handle() { int currentUserId = _userAccessor.GetCurrentUserId(); AppUser appUser = _bodyFitTrackerContext.AppUsers.Where(x => x.AppUserId == currentUserId).First(); AppUserDTO appUserDto = _mapper.Map <AppUser, AppUserDTO>(appUser); appUserDto.MeasurementPreference = new MeasurementSystemDTO(appUser.MeasurementSystemPreference); appUserDto.Height = MeasurementConverter.ConvertLength(appUser.Height, MeasurementSystem.Imperial, appUser.MeasurementSystemPreference); return(appUserDto); }
public void Handle(ChangeProfileSettingsRequest changeProfileSettingsRequest) { int currentUserId = _userAccessor.GetCurrentUserId(); AppUser appUser = _bodyFitTrackerContext.AppUsers.Where(x => x.AppUserId == currentUserId).First(); appUser.Email = changeProfileSettingsRequest.Email; // all units must be in imperial in the database appUser.Height = MeasurementConverter.ConvertLength(changeProfileSettingsRequest.Height, changeProfileSettingsRequest.UnitsOfMeasure, MeasurementSystem.Imperial); appUser.MeasurementSystemPreference = changeProfileSettingsRequest.UnitsOfMeasure; _bodyFitTrackerContext.SaveChanges(); }
private void TryEditingMeasurement(CreateOrEditBodyMeasurementRequest request) { int currentUserId = _userAccessor.GetCurrentUserId(); Dictionary <string, string> errors = new Dictionary <string, string>(); AppUser appUser = _bodyFitTrackerContext.AppUsers.Where(x => x.AppUserId == currentUserId).First(); BodyMeasurement bodyMeasurementToEdit = appUser.BodyMeasurements.Where(x => x.BodyMeasurementId == request.IdOfBodyMeasurementToEdit).FirstOrDefault(); if (bodyMeasurementToEdit == null) { errors.Add("", $"The bodymeasurement with id {request.IdOfBodyMeasurementToEdit} was not found"); throw new RestException(HttpStatusCode.NotFound, errors); } // all measurements in the database should be in imperial units MeasurementSystem sourceUnits = appUser.MeasurementSystemPreference; MeasurementSystem destinationUnits = MeasurementSystem.Imperial; bodyMeasurementToEdit.NeckCircumference = MeasurementConverter.ConvertLength(request.NeckCircumference, sourceUnits, destinationUnits); bodyMeasurementToEdit.WaistCircumference = MeasurementConverter.ConvertLength(request.WaistCircumference, sourceUnits, destinationUnits); if (request.HipCircumference.HasValue) { bodyMeasurementToEdit.HipCircumference = MeasurementConverter.ConvertLength((double)request.HipCircumference, sourceUnits, destinationUnits); } bodyMeasurementToEdit.Height = MeasurementConverter.ConvertLength(request.Height, sourceUnits, destinationUnits); bodyMeasurementToEdit.Weight = MeasurementConverter.ConvertWeight(request.Weight, sourceUnits, destinationUnits); bodyMeasurementToEdit.DateAdded = request.DateAdded; bodyMeasurementToEdit.BodyFatPercentage = BodyFatPercentageCalculator.CalculateBodyFatPercentage(bodyMeasurementToEdit); _bodyFitTrackerContext.SaveChanges(); }