Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F4499631
test_gc_debug.js
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
1 KB
Referenced Files
None
Subscribers
None
test_gc_debug.js
View Options
console
.
log
(
'=== Debug GC Test ===\n'
);
// Test 1
console
.
log
(
'Test 1: Objects'
);
let
obj1
=
{
name
:
'test'
,
value
:
42
,
nested
:
{
deep
:
'value'
}
};
Ant
.
gc
();
console
.
log
(
' OK\n'
);
// Test 2
console
.
log
(
'Test 2: Map'
);
let
map
=
new
Map
();
map
.
set
(
'key1'
,
{
data
:
'value1'
});
map
.
set
(
'key2'
,
[
1
,
2
,
3
]);
Ant
.
gc
();
console
.
log
(
' get key1:'
,
map
.
get
(
'key1'
));
console
.
log
(
' OK\n'
);
// Test 3
console
.
log
(
'Test 3: Set'
);
let
set
=
new
Set
();
set
.
add
(
'value1'
);
set
.
add
(
42
);
Ant
.
gc
();
console
.
log
(
' OK\n'
);
// Test 4
console
.
log
(
'Test 4: Property Descriptors'
);
let
descObj
=
{};
let
_hidden
=
'initial'
;
Object
.
defineProperty
(
descObj
,
'prop'
,
{
get
:
function
()
{
return
_hidden
;
},
set
:
function
(
v
)
{
_hidden
=
v
;
},
enumerable
:
true
,
configurable
:
true
});
descObj
.
prop
=
'updated'
;
Ant
.
gc
();
console
.
log
(
' prop:'
,
descObj
.
prop
);
console
.
log
(
' OK\n'
);
// Test 5
console
.
log
(
'Test 5: Promises'
);
let
p
=
new
Promise
((
resolve
)
=>
{
resolve
({
result
:
'success'
});
});
Ant
.
gc
();
console
.
log
(
' OK\n'
);
// Test 6
console
.
log
(
'Test 6: Proxy'
);
let
proxyTarget
=
{
x
:
10
,
y
:
20
};
let
proxyHandler
=
{
get
:
function
(
target
,
prop
)
{
if
(
prop
===
'sum'
)
return
target
.
x
+
target
.
y
;
return
target
[
prop
];
}
};
let
proxy
=
new
Proxy
(
proxyTarget
,
proxyHandler
);
Ant
.
gc
();
console
.
log
(
' proxy.x:'
,
proxy
.
x
);
console
.
log
(
' OK\n'
);
// Test 7
console
.
log
(
'Test 7: Closures'
);
function
makeCounter
()
{
let
count
=
0
;
return
{
inc
:
function
()
{
count
=
count
+
1
;
return
count
;
},
get
:
function
()
{
return
count
;
}
};
}
let
counter
=
makeCounter
();
counter
.
inc
();
Ant
.
gc
();
console
.
log
(
' count:'
,
counter
.
get
());
console
.
log
(
' OK\n'
);
console
.
log
(
'=== All tests passed ==='
);
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, May 3, 8:05 AM (1 d, 17 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
526577
Default Alt Text
test_gc_debug.js (1 KB)
Attached To
Mode
rANT Ant
Attached
Detach File
Event Timeline
Log In to Comment