Beispiel #1
0
        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);
        }