public async Task Search_FOUND() { try { // Run the test against one instance of the context using (var context = new BloggingContext(Setup.DbOpts)) { var repository = new AspNetCore.ExistingDb.Repositories.HashesRepository(context, Setup.Conf, Setup.Cache, Setup.Logger, Setup.ServerTiming); await repository.AddRangeAsync(new[] { new ThinHashes { Key = "alamakota", HashMD5 = "dc246bcdd6cb3548579770a034d2e678", HashSHA256 = "63b347973bb99fed9277b33cb4646b205e9a31331acfa574add3d2351f445e43" }, new ThinHashes { Key = "fakefakef", HashMD5 = "fakefakefakefakefakefakefakefake", HashSHA256 = "fakefakefakefakefakefakefakefakefakefakefakefakefakefakefakefake" } }); await repository.SaveAsync(); } using (var context = new BloggingContext(Setup.DbOpts)) { var repository = new AspNetCore.ExistingDb.Repositories.HashesRepository(context, Setup.Conf, Setup.Cache, Setup.Logger, Setup.ServerTiming); var found = await repository.PagedSearchAsync("Key", "desc", "fake", 0, 10, CancellationToken); Assert.True(found.Count > 0); Assert.NotEmpty(found.Itemz); Assert.True(1 == found.Itemz.Count()); Assert.Equal("fakefakef", found.Itemz.First()[0]); } } catch (Exception) { throw; } }
public async Task Paging_lots_of_elements(int itemsCount) { try { // Run the test against one instance of the context using (var context = new BloggingContext(Setup.DbOpts)) { var repository = new AspNetCore.ExistingDb.Repositories.HashesRepository(context, Setup.Conf, Setup.Cache, Setup.Logger, Setup.ServerTiming); var tasks = new List <Task>(itemsCount + 1); for (int i = 0; i < itemsCount; i++) { tasks.Add(repository.AddRangeAsync(new[] { new ThinHashes { Key = $"alamakota_{i}", HashMD5 = $"dc246bcdd6cb3548579770a034d2e678_{i}", HashSHA256 = $"63b347973bb99fed9277b33cb4646b205e9a31331acfa574add3d2351f445e43_{i}" }, new ThinHashes { Key = $"fakefakef_{i}", HashMD5 = $"fakefakefakefakefakefakefakefake_{i}", HashSHA256 = $"fakefakefakefakefakefakefakefakefakefakefakefakefakefakefakefake_{i}" } })); } Task.WaitAll(tasks.ToArray()); await repository.SaveAsync(); } using (var context = new BloggingContext(Setup.DbOpts)) { var repository = new AspNetCore.ExistingDb.Repositories.HashesRepository(context, Setup.Conf, Setup.Cache, Setup.Logger, Setup.ServerTiming); var found = await repository.PagedSearchAsync("Key", "asc", "fake", 2, 10, CancellationToken); Assert.True(found.Count > 0); Assert.NotEmpty(found.Itemz); Assert.Equal(found.Count, itemsCount); Assert.Equal(10, found.Itemz.Count()); Assert.Equal("fakefakef_10", found.Itemz.First()[0]); Assert.Equal("fakefakefakefakefakefakefakefakefakefakefakefakefakefakefakefake_10", found.Itemz.First()[2]); } } catch (Exception) { throw; } finally { Setup.Conn.Dispose(); } //2nd run var db = SetupInMemoryDB(); db.Wait(); Setup = db.Result; try { // Run the test against one instance of the context using (var context = new BloggingContext(Setup.DbOpts)) { var repository = new AspNetCore.ExistingDb.Repositories.HashesRepository(context, Setup.Conf, Setup.Cache, Setup.Logger, Setup.ServerTiming); var tasks = new List <Task>(itemsCount + 1); for (int i = 0; i < itemsCount; i++) { tasks.Add(repository.AddRangeAsync(new[] { new ThinHashes { Key = $"alamakota_{i}", HashMD5 = $"dc246bcdd6cb3548579770a034d2e678_{i}", HashSHA256 = $"63b347973bb99fed9277b33cb4646b205e9a31331acfa574add3d2351f445e43_{i}" }, new ThinHashes { Key = $"fakefakef_{i}", HashMD5 = $"fakefakefakefakefakefakefakefake_{i}", HashSHA256 = $"fakefakefakefakefakefakefakefakefakefakefakefakefakefakefakefake_{i}" } })); } Task.WaitAll(tasks.ToArray()); await repository.SaveAsync(); } using (var context = new BloggingContext(Setup.DbOpts)) { var repository = new AspNetCore.ExistingDb.Repositories.HashesRepository(context, Setup.Conf, Setup.Cache, Setup.Logger, Setup.ServerTiming); var found = await repository.PagedSearchAsync("Key", "asc", "63b347973bb99f", 2, 10, CancellationToken); Assert.True(found.Count > 0); Assert.NotEmpty(found.Itemz); Assert.Equal(found.Count, itemsCount); Assert.Equal(10, found.Itemz.Count()); Assert.Equal("alamakota_10", found.Itemz.First()[0]); Assert.Equal("63b347973bb99fed9277b33cb4646b205e9a31331acfa574add3d2351f445e43_10", found.Itemz.First()[2]); } } catch (Exception) { throw; } }