Esempio n. 1
0
        public void FreeIDictionaryInDictionary()
        {
            Func <IObjectDBTransaction, ILinksInDict> creator;

            using (var tr = _db.StartTransaction())
            {
                creator = tr.InitRelation <ILinksInDict>("DictLinksRelation");
                var links = creator(tr);
                var link  = new LinkInDict
                {
                    Id         = 1,
                    EdgesIDict = new Dictionary <int, IDictionary <ulong, ulong> >
                    {
                        [0] = new Dictionary <ulong, ulong> {
                            [0] = 1, [1] = 2, [2] = 3
                        },
                        [1] = new Dictionary <ulong, ulong> {
                            [0] = 1, [1] = 2, [2] = 3
                        }
                    }
                };
                links.Insert(link);
                tr.Commit();
            }

            AssertNoLeaksInDb();
            using (var tr = _db.StartTransaction())
            {
                var links = creator(tr);
                Assert.True(links.RemoveById(1));
                tr.Commit();
            }

            AssertNoLeaksInDb();
        }
 public void FreeIDictionaryInDictionary()
 {
     Func<IObjectDBTransaction, ILinksInDict> creator;
     using (var tr = _db.StartTransaction())
     {
         creator = tr.InitRelation<ILinksInDict>("DictLinksRelation");
         var links = creator(tr);
         var link = new LinkInDict
         {
             Id = 1,
             EdgesIDict = new Dictionary<int, IDictionary<ulong, ulong>>
             {
                 [0] = new Dictionary<ulong, ulong> { [0] = 1, [1] = 2, [2] = 3 },
                 [1] = new Dictionary<ulong, ulong> { [0] = 1, [1] = 2, [2] = 3 }
             }
         };
         links.Insert(link);
         tr.Commit();
     }
     AssertNoLeaksInDb();
     using (var tr = _db.StartTransaction())
     {
         var links = creator(tr);
         Assert.True(links.RemoveById(1));
         tr.Commit();
     }
     AssertNoLeaksInDb();
 }