WeakReference ReleaseTarget_CanExecutePrivateCore() { MemoryViewModel commandContainer = new MemoryViewModel(); WeakReference reference = new WeakReference(commandContainer); commandContainer.CreatePrivateCommand((x1, x2) => CreateCommand(x1, x2)); commandContainer.CreateInternalCommand((x1, x2) => CreateCommand(x1, x2)); commandContainer = null; return(reference); }
public void ReleaseTarget_CanExecutePrivate() { MemoryViewModel commandContainer = new MemoryViewModel(); WeakReference reference = new WeakReference(commandContainer); commandContainer.CreatePrivateCommand((x1, x2) => CreateCommand(x1, x2)); commandContainer.CreateInternalCommand((x1, x2) => CreateCommand(x1, x2)); Assert.IsTrue(reference.IsAlive); commandContainer = null; MemoryLeaksHelper.EnsureCollected(reference); }