chore: remove test usages of createIDWeakMap (#24116)

This commit is contained in:
Jeremy Rose 2020-06-15 13:56:51 -07:00 коммит произвёл GitHub
Родитель 8412aae231
Коммит c0182bca15
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
4 изменённых файлов: 8 добавлений и 11 удалений

Просмотреть файл

@ -151,8 +151,6 @@ void Initialize(v8::Local<v8::Object> exports,
"createDoubleIDWeakMap",
&electron::api::KeyWeakMap<std::pair<std::string, int32_t>>::Create);
#endif
dict.SetMethod("createIDWeakMap",
&electron::api::KeyWeakMap<int32_t>::Create);
dict.SetMethod("requestGarbageCollectionForTesting",
&RequestGarbageCollectionForTesting);
dict.SetMethod("isSameOrigin", &IsSameOrigin);

Просмотреть файл

@ -71,15 +71,15 @@ describe('BrowserWindow module', () => {
it('window does not get garbage collected when opened', (done) => {
const w = new BrowserWindow({ show: false });
// Keep a weak reference to the window.
const map = v8Util.createIDWeakMap<Electron.BrowserWindow>();
map.set(0, w);
// eslint-disable-next-line no-undef
const wr = new (globalThis as any).WeakRef(w);
setTimeout(() => {
// Do garbage collection, since |w| is not referenced in this closure
// it would be gone after next call if there is no other reference.
v8Util.requestGarbageCollectionForTesting();
setTimeout(() => {
expect(map.has(0)).to.equal(true);
expect(wr.deref()).to.not.be.undefined();
done();
});
});

Просмотреть файл

@ -841,18 +841,18 @@ describe('Menu module', function () {
menu.popup({ window: w });
// Keep a weak reference to the menu.
const v8Util = process.electronBinding('v8_util');
const map = v8Util.createIDWeakMap<Electron.Menu>();
map.set(0, menu);
// eslint-disable-next-line no-undef
const wr = new (globalThis as any).WeakRef(menu);
setTimeout(() => {
// Do garbage collection, since |menu| is not referenced in this closure
// it would be gone after next call.
const v8Util = process.electronBinding('v8_util');
v8Util.requestGarbageCollectionForTesting();
setTimeout(() => {
// Try to receive menu from weak reference.
if (map.has(0)) {
map.get(0)!.closePopup();
if (wr.deref()) {
wr.deref().closePopup();
done();
} else {
done('Menu is garbage-collected while popuping');

1
typings/internal-ambient.d.ts поставляемый
Просмотреть файл

@ -38,7 +38,6 @@ declare namespace NodeJS {
setHiddenValue<T>(obj: any, key: string, value: T): void;
deleteHiddenValue(obj: any, key: string): void;
requestGarbageCollectionForTesting(): void;
createIDWeakMap<V>(): ElectronInternal.KeyWeakMap<number, V>;
createDoubleIDWeakMap<V>(): ElectronInternal.KeyWeakMap<[string, number], V>;
setRemoteCallbackFreer(fn: Function, frameId: number, contextId: String, id: number, sender: any): void
weaklyTrackValue(value: any): void;