Skip to content

Commit a616dbb

Browse files
vtrifonovdtopuzov
authored andcommitted
Updated weak event listener tests for v8 6.5 (NativeScript#5697)
* Updated weak event listener tests for v8 6.5 * added missing parentheses
1 parent b9806ba commit a616dbb

1 file changed

Lines changed: 11 additions & 3 deletions

File tree

tests/app/ui/core/weak-event-listener/weak-event-listener-tests.ts

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,9 +101,13 @@ export function test_listenerDoesNotRetainTarget(done) {
101101
const sourceRef = getSourceAsWeakRef();
102102
const targetRef = getTargetAsWeakRef();
103103

104-
addWeakEventListener(sourceRef.get(), Observable.propertyChangeEvent, emptyHandler, targetRef.get());
104+
// with the v8 6.5 the GC does not release WeakRefs so fast if you pass them to a method
105+
// that's why we are making the call to the addWeakEventListener in a closure so that the WeakRef will be easier released
106+
(function() {
107+
addWeakEventListener(sourceRef.get(), Observable.propertyChangeEvent, emptyHandler, targetRef.get());
108+
})();
105109
forceGC();
106-
110+
107111
try {
108112
TKUnit.assert(!targetRef.get(), "Target should be released after GC");
109113
done(null);
@@ -117,7 +121,11 @@ export function test_listenerDoesNotRetainSource(done) {
117121
const sourceRef = getSourceAsWeakRef();
118122
const targetRef = getTargetAsWeakRef();
119123

120-
addWeakEventListener(sourceRef.get(), Observable.propertyChangeEvent, targetRef.get().onEvent, targetRef.get());
124+
// with the v8 6.5 the GC does not release WeakRefs so fast if you pass them to a method
125+
// that's why we are making the call to the addWeakEventListener in a closure so that the WeakRef will be easier released
126+
(function() {
127+
addWeakEventListener(sourceRef.get(), Observable.propertyChangeEvent, targetRef.get().onEvent, targetRef.get());
128+
})();
121129
forceGC();
122130

123131
try {

0 commit comments

Comments
 (0)