public void SortByClientDesc() { var clientId = Guid.NewGuid(); var invoiceId = Guid.NewGuid(); InsertAdditionalClientAndInvoice(clientId, invoiceId); var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId, HasBalanceOnly = false, SortBy = Core.Data.Search.InvoiceCriteria.SortFields.Client, SortOrder = Core.Data.SortDirection.DESC }; var coll = repo.Search(criteria).ToList(); Assert.Equal(9, coll.Count); Assert.True(coll[0].Client.CompanyName == "Company_client-company3"); Assert.True(coll[1].Client.CompanyName == "Company_client-company"); Assert.True(coll[2].Client.CompanyName == "Company_client-company"); Assert.True(coll[3].Client.CompanyName == "Company_client-company"); Assert.True(coll[4].Client.CompanyName == "Company_client-company"); Assert.True(coll[5].Client.CompanyName == "Company_client-company"); Assert.True(coll[6].Client.CompanyName == "Company_client-company"); Assert.True(coll[7].Client.CompanyName == "Company_client-company"); Assert.True(coll[8].Client.CompanyName == "Company_client-company"); }
public void ByUserAndHasBalanceOnly() { var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId }; var coll = repo.Search(criteria).ToList(); Assert.Equal(4, coll.Count); }
public void ByUserClientAndNumber() { var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId, HasBalanceOnly = false, Number = "INV_0001" }; var coll = repo.Search(criteria).ToList(); Assert.Equal(1, coll.Count); Assert.NotNull(coll.Find(i => i.Number == "INV_0001")); }
public void ByUserAndVoidedDateRange() { var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId, HasBalanceOnly = false, Voided = true, VoidedDateRange = { From = DateTime.Parse("10/16/2015"), To = DateTime.Parse("10/17/2015") } }; var coll = repo.Search(criteria).ToList(); Assert.Equal(1, coll.Count); Assert.NotNull(coll.Find(i => i.Id == Guid.Parse("{2E046739-7C02-4E1D-8FD9-2C3C49F960C2}"))); }
public void ByUserAndVoided() { var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId, HasBalanceOnly = false, Voided = true }; var coll = repo.Search(criteria).ToList(); Assert.Equal(2, coll.Count); Assert.NotNull(coll.Find(i => i.Id == Guid.Parse("{2E046739-7C02-4E1D-8FD9-2C3C49F960C2}"))); Assert.NotNull(coll.Find(i => i.Id == Guid.Parse("{97DB6BD9-E314-4463-BBF8-BCCB9C56F903}"))); }
public void ByUserAndClient() { var clientId = Guid.NewGuid(); var invoiceId = Guid.NewGuid(); InsertAdditionalClientAndInvoice(clientId, invoiceId); var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId, HasBalanceOnly = false, ClientId = clientId }; var coll = repo.Search(criteria).ToList(); Assert.Equal(1, coll.Count); Assert.NotNull(coll.Find(i => i.Id == invoiceId)); }
public void ByUserAndInvoiceDateRange() { var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId, HasBalanceOnly = false, InvoiceDateRange = { From = DateTime.Parse("10/25/2015"), To = DateTime.Parse("11/2/2015") } }; var coll = repo.Search(criteria).ToList(); Assert.Equal(3, coll.Count); Assert.NotNull(coll.Find(i => i.Id == Guid.Parse("{05CCDE2B-2637-4DFC-83DB-D92B3EB145D6}"))); Assert.NotNull(coll.Find(i => i.Id == Guid.Parse("{6BBE344A-EBF9-404F-9130-C2B6AB23C5E1}"))); Assert.NotNull(coll.Find(i => i.Id == Guid.Parse("{DE1317C4-0A7E-4E07-98C7-350E6AFD8CF3}"))); }
public void ByUserPaged() { var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId, HasBalanceOnly = false, PageSize = 4, Page = 2 }; var coll = repo.Search(criteria).ToList(); Assert.Equal(4, coll.Count); Assert.NotNull(coll.Find(c => c.Number == "INV_0005")); Assert.NotNull(coll.Find(c => c.Number == "INV_0006")); Assert.NotNull(coll.Find(c => c.Number == "INV_0007")); Assert.NotNull(coll.Find(c => c.Number == "INV_0008")); }
public void SortByDataDesc() { var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId, HasBalanceOnly = false, SortBy = Core.Data.Search.InvoiceCriteria.SortFields.Date, SortOrder = Core.Data.SortDirection.DESC }; var coll = repo.Search(criteria).ToList(); Assert.Equal(8, coll.Count); Assert.True(coll[0].Date == DateTime.Parse("11/15/2015")); Assert.True(coll[1].Date == DateTime.Parse("11/10/2015")); Assert.True(coll[2].Date == DateTime.Parse("11/5/2015")); Assert.True(coll[3].Date == DateTime.Parse("11/1/2015")); Assert.True(coll[4].Date == DateTime.Parse("10/30/2015")); Assert.True(coll[5].Date == DateTime.Parse("10/25/2015")); Assert.True(coll[6].Date == DateTime.Parse("10/20/2015")); Assert.True(coll[7].Date == DateTime.Parse("10/15/2015")); }
public void SortByNumberDesc() { var repo = new Core.Data.Persistor.Invoice(); var criteria = new Core.Data.Search.InvoiceCriteria { UserId = _userId, HasBalanceOnly = false, SortBy = Core.Data.Search.InvoiceCriteria.SortFields.Number, SortOrder = Core.Data.SortDirection.DESC }; var coll = repo.Search(criteria).ToList(); Assert.Equal(8, coll.Count); Assert.True(coll[0].Number == "INV_0008"); Assert.True(coll[1].Number == "INV_0007"); Assert.True(coll[2].Number == "INV_0006"); Assert.True(coll[3].Number == "INV_0005"); Assert.True(coll[4].Number == "INV_0004"); Assert.True(coll[5].Number == "INV_0003"); Assert.True(coll[6].Number == "INV_0002"); Assert.True(coll[7].Number == "INV_0001"); }
public void Successful() { // data var invoiceId1 = new Guid(); var invoiceId2 = new Guid(); var criteria = new Core.Data.Search.InvoiceCriteria() { UserId = Guid.NewGuid() }; var invoices = new List <Core.Data.Model.Invoice> { new Core.Data.Model.Invoice { Id = invoiceId1 }, new Core.Data.Model.Invoice { Id = invoiceId2 } }; // mocks var invoicePersistor = Mocks.StrictMock <Core.Data.Persistor.Invoice>(); var bll = Mocks.StrictMock <Core.Logic.InvoiceLogic>(invoicePersistor, null, null); bll.Expect(b => b.Search(criteria)).CallOriginalMethod(OriginalCallOptions.NoExpectation); bll.Expect(b => b.VaildateCriteria(criteria)); invoicePersistor.Expect(d => d.Search(criteria)).Return(invoices.AsQueryable()); // record Mocks.ReplayAll(); var results = bll.Search(criteria); Assert.NotEmpty(results); Assert.NotNull(results.FirstOrDefault(s => s.Id == invoiceId1)); Assert.NotNull(results.FirstOrDefault(s => s.Id == invoiceId2)); }
public IQueryable <Core.Data.Model.Invoice> Search([FromBody] Core.Data.Search.InvoiceCriteria criteria) { criteria.UserId = UserId; return(Logic.Search(criteria)); }