public async void AsyncOperations() { const int Count = 500; BasicTestDb db = new BasicTestDb(); List <Task <bool> > tasks = new List <Task <bool> >(); await Task.Run( () => db.InsertAll(Faker.RandomCollection(() => new BasicObject(), Count, Count))) .ConfigureAwait(true); for (int i = 0; i < 20; i++) { tasks.Add( Task.Run( () => { using (db.Lock()) return(db.Table <BasicObject>().ToList().Count == Count); })); } await Task.WhenAll(tasks.ToArray()).ConfigureAwait(true); tasks.Should().OnlyContain(f => f.Result); }
public void SelectExpr() { const int Count = 500; BasicTestDb db = new BasicTestDb(); var paramObjs = Faker.RandomCollection(() => new BasicObject(), Count, Count); // Create DB objects db.InsertAll(paramObjs); IEnumerable <BasicObject> fetchedObjs; // Fetch created objects using (db.Lock()) fetchedObjs = db.Table <BasicObject>() .Where(bo => paramObjs.Select(po => po.Idx).Contains(bo.Idx)) .ToList(); fetchedObjs.Count().Should().Be(paramObjs.Count()); }