public void PostPassport_ShoulAddPassport() { var passportsTestData = new List <OrganizationTaxAddress>() { new OrganizationTaxAddress { Id = 1, OrganizationId = 2 }, new OrganizationTaxAddress { Id = 2, Deleted = true, OrganizationId = 2 }, new OrganizationTaxAddress { Id = 3, OrganizationId = 3 } }; var passports = MockHelper.MockDbSet(passportsTestData); passports.Setup(d => d.Find(It.IsAny <object>())).Returns <object[]>((keyValues) => { return(passports.Object.SingleOrDefault(product => product.Id == (int)keyValues.Single())); }); passports.Setup(d => d.Add(It.IsAny <OrganizationTaxAddress>())).Returns <OrganizationTaxAddress>((contact) => { passportsTestData.Add(contact); passports = MockHelper.MockDbSet(passportsTestData); return(contact); }); var dbContext = new Mock <IAppDbContext>(); dbContext.Setup(m => m.OrganizationTaxAddresses).Returns(passports.Object); dbContext.Setup(d => d.Set <OrganizationTaxAddress>()).Returns(passports.Object); dbContext.Setup(d => d.ExecuteStoredProcedure <int>(It.IsAny <string>(), It.IsAny <object[]>())) .Returns <string, object[]>((query, parameters) => { List <int> list = new List <int>(); if (query.Contains("NewTableId")) { int i = passports.Object.Max(d => d.Id) + 1; list.Add(i); } else { list.Add(0); } return(list); }); var factory = new Mock <IDbContextFactory>(); factory.Setup(m => m.CreateDbContext()).Returns(dbContext.Object); OrganizationTaxAddress passport = new OrganizationTaxAddress { Id = 0, OrganizationId = 3, Address = new Address { Apartment = "3", BuildingNumber = 45 } }; var controller = new OrganizationTaxAddressesController(factory.Object); var result = controller.PostOrganizationTaxAddress(passport.ToDTO()) as CreatedAtRouteNegotiatedContentResult <OrganizationTaxAddressDTO>; Assert.IsNotNull(result); Assert.AreEqual(4, result.Content.Id); Assert.AreEqual(3, result.Content.OrganizationId); }
public IHttpActionResult DeleteOrganizationTaxAddress(int id) { try { UnitOfWork unitOfWork = new UnitOfWork(factory); OrganizationTaxAddress address = unitOfWork.OrganizationTaxAddressesRepository .Get(d => d.Id == id, includeProperties: "Address,Address.Country,Address.AddressLocality,Address.AddressPlace,Address.AddressRegion,Address.AddressVillage") .FirstOrDefault(); address.Deleted = true; unitOfWork.OrganizationTaxAddressesRepository.Update(address); unitOfWork.Save(); return(Ok(address.ToDTO())); } catch (NotFoundException nfe) { return(NotFound()); } catch (ConflictException ce) { return(Conflict()); } catch (Exception e) { return(BadRequest(e.Message)); } }
public IHttpActionResult PutOrganizationTaxAddress(int id, OrganizationTaxAddressDTO organizationTaxAddress) { if (organizationTaxAddress == null || !ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != organizationTaxAddress.Id) { return(BadRequest()); } try { OrganizationTaxAddress address = organizationTaxAddress.FromDTO(); UnitOfWork unitOfWork = new UnitOfWork(factory); unitOfWork.OrganizationTaxAddressesRepository.Update(address); unitOfWork.Save(); OrganizationTaxAddressDTO dto = unitOfWork.OrganizationTaxAddressesRepository .Get(d => d.Id == id, includeProperties: "Address,Address.Country,Address.AddressLocality,Address.AddressPlace,Address.AddressRegion,Address.AddressVillage") .FirstOrDefault().ToDTO(); return(Ok(dto)); } catch (NotFoundException nfe) { return(NotFound()); } catch (ConflictException ce) { return(Conflict()); } catch (Exception e) { return(BadRequest(e.Message)); } }
public IHttpActionResult PostOrganizationTaxAddress(OrganizationTaxAddressDTO organizationTaxAddress) { if (organizationTaxAddress == null) { return(BadRequest(ModelState)); } try { OrganizationTaxAddress address = organizationTaxAddress.FromDTO(); UnitOfWork unitOfWork = new UnitOfWork(factory); address.Id = address.NewId(unitOfWork); address.Address.Id = address.Address.NewId(unitOfWork); address.AddressId = address.Address.Id; unitOfWork.OrganizationTaxAddressesRepository.Insert(address); unitOfWork.Save(); OrganizationTaxAddressDTO dto = unitOfWork.OrganizationTaxAddressesRepository .Get(d => d.Id == address.Id, includeProperties: "Address,Address.Country,Address.AddressLocality,Address.AddressPlace,Address.AddressRegion,Address.AddressVillage") .FirstOrDefault().ToDTO(); return(CreatedAtRoute("GetOrganizationTaxAddress", new { id = dto.Id }, dto)); } catch (NotFoundException nfe) { return(NotFound()); } catch (ConflictException ce) { return(Conflict()); } catch (Exception e) { return(BadRequest(e.Message)); } }
public void DeletePassport_ShouldDeleteAndReturnOk() { var passportsTestData = new List <OrganizationTaxAddress>() { new OrganizationTaxAddress { Id = 1, OrganizationId = 2 }, new OrganizationTaxAddress { Id = 2, Deleted = true, OrganizationId = 2 }, new OrganizationTaxAddress { Id = 3, OrganizationId = 3 } }; var passports = MockHelper.MockDbSet(passportsTestData); passports.Setup(d => d.Find(It.IsAny <object>())).Returns <object[]>((keyValues) => { return(passports.Object.SingleOrDefault(product => product.Id == (int)keyValues.Single())); }); var dbContext = new Mock <IAppDbContext>(); dbContext.Setup(m => m.OrganizationTaxAddresses).Returns(passports.Object); dbContext.Setup(d => d.Set <OrganizationTaxAddress>()).Returns(passports.Object); var factory = new Mock <IDbContextFactory>(); factory.Setup(m => m.CreateDbContext()).Returns(dbContext.Object); OrganizationTaxAddress passport = new OrganizationTaxAddress { Id = 3, OrganizationId = 3 }; var controller = new OrganizationTaxAddressesController(factory.Object); var result = controller.DeleteOrganizationTaxAddress(3) as OkNegotiatedContentResult <OrganizationTaxAddressDTO>; Assert.IsNotNull(result); Assert.AreEqual(3, result.Content.Id); Assert.AreEqual(3, result.Content.OrganizationId); }