Browse Source

fix: `webContents.navigationHistory` should be enumerable (#42181)

fix: webContents.navigationHistory should be enumerable

Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <[email protected]>
trop[bot] 11 months ago
parent
commit
05ae671d83
2 changed files with 13 additions and 1 deletions
  1. 2 1
      lib/browser/api/web-contents.ts
  2. 11 0
      spec/api-web-contents-spec.ts

+ 2 - 1
lib/browser/api/web-contents.ts

@@ -539,7 +539,8 @@ WebContents.prototype._init = function () {
       length: this._historyLength.bind(this),
       getEntryAtIndex: this._getNavigationEntryAtIndex.bind(this)
     },
-    writable: false
+    writable: false,
+    enumerable: true
   });
 
   // Dispatch IPC messages to the ipc module.

+ 11 - 0
spec/api-web-contents-spec.ts

@@ -41,6 +41,17 @@ describe('webContents module', () => {
     });
   });
 
+  describe('webContents properties', () => {
+    afterEach(closeAllWindows);
+
+    it('has expected additional enumerable properties', () => {
+      const w = new BrowserWindow({ show: false });
+      const properties = Object.getOwnPropertyNames(w.webContents);
+      expect(properties).to.include('ipc');
+      expect(properties).to.include('navigationHistory');
+    });
+  });
+
   describe('fromId()', () => {
     it('returns undefined for an unknown id', () => {
       expect(webContents.fromId(12345)).to.be.undefined();