Esempio n. 1
0
        public virtual void testCloneMem()
        {
            System.GC.Collect();
            XMLDoc doc = new XMLDoc("foobar", null);
            long   l   = doc.getDocMemoryUsed();

            Console.WriteLine(l);
            // Java to C# Conversion - Divide number of tests by 1000 for now
            for (int i = 0; i < 1000; i++)
            {
                doc.Clone();
            }
            System.GC.Collect();
            long l2 = doc.getDocMemoryUsed();

            Console.WriteLine(l2);
            Assert.IsTrue(l2 - l < 100000);
        }
Esempio n. 2
0
        public virtual void testSize()
        {
            Process.GetCurrentProcess();
            GC.Collect();
            Process.GetCurrentProcess();
            GC.Collect();
            Process.GetCurrentProcess();
            GC.Collect();

            XMLDoc d        = new XMLDoc("JDF:foo", JDFConstants.JDFNAMESPACE);
            long   memlocal = d.getDocMemoryUsed();
            string s        = d.write2String(0);

            Assert.IsTrue(memlocal + 100000 > s.Length, "mem 1");
            // the gc is messy and sometimes returns +/- a few 10k
            Assert.IsTrue(memlocal + 100000 > s.Length, "mem 2");
            d        = JDFTestCaseBase.creatXMDoc();
            memlocal = d.getDocMemoryUsed();
            s        = d.write2String(0);
            Assert.IsTrue(memlocal + 10000 > s.Length, "mem 3");
            d = new XMLDoc("foo", null);
            KElement e  = d.getRoot();
            KElement e2 = e.appendElement("e2");
            KElement e3 = e2.appendElement("e3");

            for (int i = 33; i < 999; i++)
            {
                e3.setAttribute("k" + Convert.ToString(i), "value" + Convert.ToString(i));
            }
            for (int j = 0; j < 99; j++)
            {
                e2.copyElement(e3, null);
            }
            memlocal = d.getDocMemoryUsed();
            s        = d.write2String(0);
            Assert.IsTrue(memlocal + 200000 > s.Length, "mem 4");
        }