Exemple #1
0
        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);
        }
Exemple #2
0
        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));
            }
        }
Exemple #3
0
        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));
            }
        }
Exemple #4
0
        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));
            }
        }
Exemple #5
0
        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);
        }