public void TestDatabaseChange() { var wa = new WaitAssert(); Db.AddChangeListener(null, (sender, args) => { var docIDs = args.DocumentIDs; wa.RunAssert(() => { args.Database.Should().Be(Db); docIDs.Should().HaveCount(10, "because that is the number of expected rows"); }); }); Db.InBatch(() => { for (uint i = 0; i < 10; i++) { var doc = new MutableDocument($"doc-{i}"); doc.SetString("type", "demo"); Db.Save(doc); } }); wa.WaitForResult(TimeSpan.FromSeconds(5)); }
public void TestDatabaseChange() { var exp1 = new WaitAssert(); var exp2 = new WaitAssert(); Db.AddChangeListener(null, (sender, args) => { exp2.RunAssert(() => { exp1.WaitForResult(TimeSpan.FromSeconds(20)); // Test deadlock }); }); var ignore = exp1.RunAssertAsync(() => { Db.Save(new MutableDocument("doc1")); }); exp1.WaitForResult(TimeSpan.FromSeconds(10)); }