public async void GetTipoPersonaAsync_ReturnExpectedPageSize() { // Arrange var dbOptions = new DbContextOptionsBuilder <VisitPopDbContext>() .UseInMemoryDatabase(databaseName: $"TipoPersonaDb{Guid.NewGuid()}") .Options; var sieveOptios = Options.Create(new SieveOptions()); var fakeTipoPeronaOne = new FakeTipoPersona { }.Ignore(t => t.Id).Generate(); fakeTipoPeronaOne.Id = 1; var fakeTipoPeronaTwo = new FakeTipoPersona { }.Ignore(t => t.Id).Generate(); fakeTipoPeronaTwo.Id = 2; var fakeTipoPeronaThree = new FakeTipoPersona { }.Ignore(t => t.Id).Generate(); fakeTipoPeronaThree.Id = 3; // Act using (var context = new VisitPopDbContext(dbOptions)) { context.PersonTypes.AddRange(fakeTipoPeronaOne, fakeTipoPeronaTwo, fakeTipoPeronaThree); context.SaveChanges(); var service = new PersonTypeRepository(context, new SieveProcessor(sieveOptios)); var tipoPersonaRepo = await service.GetTipoPersonas(new PersonTypeParametersDto { PageSize = 2 }); // Assert tipoPersonaRepo.Should() .NotBeEmpty() .And.HaveCount(2); tipoPersonaRepo.Should().ContainEquivalentOf(fakeTipoPeronaOne); tipoPersonaRepo.Should().ContainEquivalentOf(fakeTipoPeronaTwo); context.Database.EnsureDeleted(); } }
public async void GetTipoPersonasAsync_FilterNombreListWithExact() { // Arrange var dbOptions = new DbContextOptionsBuilder <VisitPopDbContext>() .UseInMemoryDatabase(databaseName: $"TipoPersonaDb{Guid.NewGuid()}") .Options; var sieveOptions = Options.Create(new SieveOptions()); var fakeTipoPersonaOne = new FakeTipoPersona { }.Generate(); fakeTipoPersonaOne.Name = "alpha"; var fakeTipoPersonaTwo = new FakeTipoPersona { }.Generate(); fakeTipoPersonaTwo.Name = "bravo"; var fakeTipoPersonaThree = new FakeTipoPersona { }.Generate(); fakeTipoPersonaThree.Name = "charlie"; // Act using (var context = new VisitPopDbContext(dbOptions)) { context.PersonTypes.AddRange(fakeTipoPersonaOne, fakeTipoPersonaTwo, fakeTipoPersonaThree); context.SaveChanges(); var service = new PersonTypeRepository(context, new SieveProcessor(sieveOptions)); var tipoPersonaRepo = await service.GetTipoPersonas(new PersonTypeParametersDto { Filters = $"Nombre == {fakeTipoPersonaTwo.Name}" }); // Assert tipoPersonaRepo.Should() .HaveCount(1); context.Database.EnsureDeleted(); } }
public async void GetTipoPersonasAsync_ListTipoPersonaIdSortedInDescOrder() { // Arrange var dbOptions = new DbContextOptionsBuilder <VisitPopDbContext>() .UseInMemoryDatabase(databaseName: $"TipoPersonaDb{Guid.NewGuid()}") .Options; var sieveOptions = Options.Create(new SieveOptions()); var fakeTipoPersonaOne = new FakeTipoPersona { }.Generate(); fakeTipoPersonaOne.Id = 2; var fakeTipoPersonaTwo = new FakeTipoPersona { }.Generate(); fakeTipoPersonaTwo.Id = 1; var fakeTipoPersonaThree = new FakeTipoPersona { }.Generate(); fakeTipoPersonaThree.Id = 3; // Act using (var context = new VisitPopDbContext(dbOptions)) { context.PersonTypes.AddRange(fakeTipoPersonaOne, fakeTipoPersonaTwo, fakeTipoPersonaThree); context.SaveChanges(); var service = new PersonTypeRepository(context, new SieveProcessor(sieveOptions)); var tipoPersonaRepo = await service.GetTipoPersonas(new PersonTypeParametersDto { SortOrder = "-Id" }); // Assert tipoPersonaRepo.Should() .ContainInOrder(fakeTipoPersonaThree, fakeTipoPersonaOne, fakeTipoPersonaTwo); context.Database.EnsureDeleted(); } }