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); }
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"); }