[HttpGet] public async Task <IActionResult> Index() { var user = await _userManager.GetUserAsync(User); if (user == null) { throw new ApplicationException( $"Unable to load user with ID '{_userManager.GetUserId(User)}'."); } GeographicAddress address = (GeographicAddress)await addresses.GetObject(user.AddressID); user.Address = address.Data; var model = new IndexViewModel { Username = user.UserName, Email = user.Email, PhoneNumber = user.PhoneNumber, IsEmailConfirmed = user.EmailConfirmed, StatusMessage = StatusMessage, FirstName = user.FirstName, LastName = user.LastName, AddressLine = user.Address.Address, ZipCode = user.Address.ZipOrPostCodeOrExtension, City = user.Address.CityOrAreaCode, County = user.Address.RegionOrStateOrCountryCode, Country = getCountryCodesDictionary().FirstOrDefault(x => x.Value == user.Address.CountryID).Key, DateOfBirth = user.DateOfBirth }; return(View(model)); }
public async Task <IActionResult> Index(IndexViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var user = await _userManager.GetUserAsync(User); if (user == null) { throw new ApplicationException( $"Unable to load user with ID '{_userManager.GetUserId(User)}'."); } var email = user.Email; if (model.Email != email) { var setEmailResult = await _userManager.SetEmailAsync(user, model.Email); if (!setEmailResult.Succeeded) { throw new ApplicationException( $"Unexpected error occurred setting email for user with ID '{user.Id}'."); } } var phoneNumber = user.PhoneNumber; if (model.PhoneNumber != phoneNumber) { var setPhoneResult = await _userManager.SetPhoneNumberAsync(user, model.PhoneNumber); if (!setPhoneResult.Succeeded) { throw new ApplicationException( $"Unexpected error occurred setting phone number for user with ID '{user.Id}'."); } } GeographicAddress userAddress = (GeographicAddress)await addresses.GetObject(user.AddressID); userAddress.Data.Address = model.AddressLine; userAddress.Data.ZipOrPostCodeOrExtension = model.ZipCode; userAddress.Data.CityOrAreaCode = model.City; userAddress.Data.RegionOrStateOrCountryCode = model.County; userAddress.Data.CountryID = getCountryCodesDictionary()[model.Country]; await addresses.UpdateObject(userAddress); await _userManager.UpdateAsync(user); StatusMessage = "Your profile has been updated"; return(RedirectToAction(nameof(Index))); }
[TestMethod] public async Task LoadDevicesTest() { var c = new GeographicAddress(GetRandom.Object <GeographicAddressData>()); var l = createRandomDevices(c.Data.ID); await registrations.LoadDevices(c); Assert.AreEqual(l.Count, c.RegisteredTelecomDevices.Count); foreach (var x in c.RegisteredTelecomDevices) { Assert.IsTrue(l.Contains(x.Data.ID)); } }
public async Task LoadDevices(GeographicAddress address) { if (address is null) { return; } var id = address.Data?.ID ?? string.Empty; var devices = await dbSet.Include(x => x.Device).Where(x => x.AddressID == id) .AsNoTracking().ToListAsync(); foreach (var c in devices) { address.RegisteredTelecomDevice(new TelecomAddress(c.Device)); } }
[TestMethod] public void CreateTest() { var r = GetRandom.Object <TelecomDeviceRegistrationData>(); var address = new GeographicAddress(r.Address); var device = new TelecomAddress(r.Device); var o = TelecomDeviceRegistrationFactory.Create(address, device, r.ValidFrom, r.ValidTo); Assert.AreEqual(o.Data.ValidFrom, r.ValidFrom); Assert.AreEqual(o.Data.ValidTo, r.ValidTo); Assert.AreEqual(o.Address.Data, r.Address); Assert.AreEqual(o.Device.Data, r.Device); Assert.AreEqual(o.Data.AddressID, r.Address.ID); Assert.AreEqual(o.Data.DeviceID, r.Device.ID); Assert.AreEqual(o.Data.Address, r.Address); Assert.AreEqual(o.Data.Device, r.Device); }
private static GeographicAddressView create(GeographicAddress o) { var v = new GeographicAddressView { AddressLine = o?.Data?.Address, City = o?.Data?.CityOrAreaCode, ZipOrPostalCode = o?.Data?.ZipOrPostCodeOrExtension, RegionOrState = o?.Data?.RegionOrStateOrCountryCode, Country = o?.Data?.CountryID }; setCommonValues(v, o?.Data?.ID, o?.Data?.ValidFrom, o?.Data?.ValidTo); if (o is null) { return(v); } foreach (var c in o.RegisteredTelecomDevices) { var device = create(c); v.RegisteredTelecomAddresses.Add(device); } return(v); }
public void TestCleanup() { p = null; }
public void TestInitialize() { p = new GeographicAddress(); }