8000 Inline called-once methods in TestDomainReload · pythonnet/pythonnet@06a656e · GitHub
[go: up one dir, main page]

Skip to content

Commit 06a656e

Browse files
committed
Inline called-once methods in TestDomainReload
Addresses comment: #958
1 parent 38ea0b6 commit 06a656e

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

src/embed_tests/TestDomainReload.cs

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,12 @@ void ExecTest()
280280
{
281281
try
282282
{
283+
PythonEngine.Initialize();
283284
var numRef = CreateNumReference();
285+
PythonEngine.Shutdown(); // <- "run" 1 ends
286+
PythonEngine.Initialize(); // <- "run" 2 starts
287+
Assert.True(numRef.IsAlive);
288+
284289
GC.Collect();
285290
GC.WaitForPendingFinalizers(); // <- this will put former `num` into Finalizer queue
286291
Finalizer.Instance.Collect(forceDispose: true);
@@ -321,7 +326,11 @@ void ExecTest()
321326
{
322327
try
323328
{
329+
PythonEngine.Initialize();
324330
var objRef = CreateConcreateObject();
331+
PythonEngine.Shutdown(); // <- "run" 1 ends
332+
PythonEngine.Initialize(); // <- "run" 2 starts
333+
Assert.True(objRef.IsAlive);
325334
GC.Collect();
326335
GC.WaitForPendingFinalizers();
327336
Finalizer.Instance.Collect(forceDispose: true);
@@ -355,25 +364,17 @@ void ErrorHandler(object sender, Finalizer.ErrorArgs e)
355364

356365
private static WeakReference CreateNumReference()
357366
{
358-
PythonEngine.Initialize();
359367
var num = 3216757418.ToPython();
360368
Assert.AreEqual(num.Refcount, 1);
361369
WeakReference numRef = new WeakReference(num, false);
362-
PythonEngine.Shutdown(); // <- "run" 1 ends
363-
PythonEngine.Initialize(); // <- "run" 2 starts
364-
num = null;
365370
return numRef;
366371
}
367372

368373
private static WeakReference CreateConcreateObject()
369374
{
370-
PythonEngine.Initialize();
371375
var obj = new Domain.MyClass().ToPython();
372376
Assert.AreEqual(obj.Refcount, 1);
373377
WeakReference numRef = new WeakReference(obj, false);
374-
PythonEngine.Shutdown();
375-
PythonEngine.Initialize();
376-
obj = null;
377378
return numRef;
378379
}
379380

0 commit comments

Comments
 (0)
0