public void TestTriggerOnChildren() { var trigger = new TriggerListTestTrigger(100); _databaseInstance.RegisterTrigger(trigger); var expected = TestListModel.MakeTestListModel(); // set all the keys to something negative so the trigger can generate the key foreach (var subModel in expected.Children) { subModel.Key = -1 * subModel.Key; } var key = _databaseInstance.SaveAsync(expected).Result; var actual = _databaseInstance.LoadAsync <TestListModel>(key).Result; Assert.NotNull(actual.Children); //Trigger failed: child list is null."); Assert.Equal(expected.Children.Count, actual.Children.Count); //Trigger failed: actual child count different."); var noKey = (from m in actual.Children where m == null || m.Key < 1 select m).Any(); Assert.False(noKey); //Trigger failed: children found without a key."); _databaseInstance.UnregisterTrigger(trigger); }