public Domain.Model.Address Create(Domain.Model.Address obj) { if (obj.Latitude.HasValue && obj.Longitude.HasValue) { obj.Point = new Point(obj.Latitude.Value, obj.Longitude.Value); } return(_repository.Insert(obj)); }
public void InsertTest() { var expected = new Domain.Model.Address { City = "Taguatinga", Complement = "EPCT", AddressLine = "QS 07 Lote", Number = "01", State = "Distrito Federal", PostalCode = 71966700, ReferencePlace = "Na frente do pistão sul", Country = "Brasil", Neighborhood = "Taguatinga Sul", Latitude = -15.8675561, Longitude = -48.0309839, }; var newObj = _target.Insert(expected); newObj.Id.ShouldBePositive(); }
public Domain.Model.Address Insert(Domain.Model.Address obj) { _context.Addresses.Add(obj); _context.SaveChanges(); return(obj); }
public void FromOrderToUser() { // Arrange var contextMock = new Mock <IDbContext>(); contextMock.Setup(a => a.Set <AddressType>()).Returns(Mock.Of <IDbSet <AddressType> >); contextMock.Setup(a => a.Set <Address>()).Returns(Mock.Of <IDbSet <Address> >); contextMock.Setup(a => a.Set <Category>()).Returns(Mock.Of <IDbSet <Category> >); contextMock.Setup(a => a.Set <Client>()).Returns(Mock.Of <IDbSet <Client> >); contextMock.Setup(a => a.Set <Courier>()).Returns(Mock.Of <IDbSet <Courier> >); contextMock.Setup(a => a.Set <Order>()).Returns(Mock.Of <IDbSet <Order> >); contextMock.Setup(a => a.Set <Package>()).Returns(Mock.Of <IDbSet <Package> >); contextMock.Setup(a => a.Set <TimeInterval>()).Returns(Mock.Of <IDbSet <TimeInterval> >); var repoMock = new Mock <IRepository>(); var addressesrepoMock = new Mock <IAddressesRepository>(); var couriersRepoMock = new Mock <ICouriersRepository>(); var ordersRepoMock = new Mock <IOrderRepository>(); var packagesRepoMock = new Mock <IPackagesRepository>(); var timeintervalRepoMock = new Mock <ITimeIntervalsRepository>(); repoMock.Setup(x => x.Insert(It.IsAny <Client>())); timeintervalRepoMock.Setup(x => x.AddPair(It.IsAny <TimeInterval>(), It.IsAny <int>())); repoMock.Setup(x => x.Insert(It.IsAny <Courier>())); addressesrepoMock.Setup(x => x.Add(It.IsAny <Address>())); ordersRepoMock.Setup(x => x.Add(It.IsAny <Order>())); var unitOfWorkMock = new Mock <IUnitOfWork>(); var container = GetMockedContainer(contextMock.Object, unitOfWorkMock.Object, repoMock.Object, addressesrepoMock.Object, couriersRepoMock.Object, ordersRepoMock.Object, packagesRepoMock.Object, timeintervalRepoMock.Object); //Action IDataService service = new DataService(); service.SetContainer(container); Courier courier = new Courier { Name = "Jan", Surname = "Kochanowski", PhoneNumber = 111222333, CourierId = 1, }; var timeintervalCollection = new List <TimeInterval> { new TimeInterval { IsTaken = false, Start = new DateTime(2016, 11, 15, 12, 0, 0), End = new DateTime(2016, 11, 16, 12, 0, 0), TimeIntervalId = 1, }, new TimeInterval { IsTaken = false, Start = new DateTime(2016, 11, 16, 12, 0, 0), End = new DateTime(2016, 11, 17, 12, 0, 0), TimeIntervalId = 2, } }; service.Insert(courier); service.TimeIntervalAdd(timeintervalCollection, courier.CourierId); timeintervalRepoMock.Setup(x => x.FirstAvailable()).Returns(() => timeintervalCollection.ElementAt(0)); Client client = new Client { Name = "TESLA", NIP = 1541025154, PhoneNumber = 111555444, EmailAddress = "*****@*****.**", ClientId = 1, }; service.Insert(client); Address homeAddress = new Domain.Model.Address { ClientId = client.ClientId, ZipCode = 10500, City = "Lodz", BuildingNumber = "15", Country = "Poland", Street = "Wielka", Voivodeship = "łódzkie", AddressTypeId = 1, AddressId = 1, }; Address invoiceAddress = new Domain.Model.Address { ClientId = client.ClientId, ZipCode = 10500, City = "Lodz", BuildingNumber = "15", Country = "Poland", Street = "Wielka", Voivodeship = "łódzkie", AddressTypeId = 2, AddressId = 2, }; Address deliveryAddress = new Domain.Model.Address { ClientId = client.ClientId, ZipCode = 10500, City = "Lodz", BuildingNumber = "15", Country = "Poland", Street = "Wielka", Voivodeship = "łódzkie", AddressTypeId = 3, AddressId = 3, }; service.Add(homeAddress); service.Add(invoiceAddress); service.Add(deliveryAddress); Order order = new Order { CourierId = courier.CourierId, ClientId = client.ClientId, FromAddressId = homeAddress.AddressId, InvoiceAddressId = invoiceAddress.AddressId, ToAddressId = deliveryAddress.AddressId, TimeIntervalId = timeintervalCollection.ElementAt(1).TimeIntervalId, }; service.Add(order); var firstTimeinterval = service.TimeIntervalFirstAvailable(); // Assert repoMock.Verify(x => x.Insert(client), Times.Once); timeintervalRepoMock.Verify(x => x.AddPair(It.IsAny <TimeInterval>(), It.IsAny <int>()), Times.Exactly(2)); repoMock.Verify(x => x.Insert(courier), Times.Once); addressesrepoMock.Verify(x => x.Add(It.IsAny <Address>()), Times.Exactly(3)); repoMock.Verify(x => x.Insert(order), Times.Once); timeintervalRepoMock.Verify(x => x.FirstAvailable()); }