<!--  As an open source project with a dedicated but small maintainer team, it can sometimes take a long time for issues to be addressed so please be patient and we will get back to you as soon as we can.
-->

### Preflight Checklist
<!-- Please ensure you've completed the following steps by replacing [ ] with [x]-->

* [x] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/master/CONTRIBUTING.md) for this project.
* [x] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/master/CODE_OF_CONDUCT.md) that this project adheres to.
* [x] I have searched the issue tracker for an issue that matches the one I want to file, without success.

### Issue Details

* **Electron Version:**
  * 8.0.0 (also tested with `electron-nightly@11.0.0-nightly.20200708`)
* **Operating System:**
  * macOS 10.15.5
* **Last Known Working Electron version:**
  * 7.3.2

### Expected Behavior
```
$ yarn add electron@8.0.0
$ node_modules/electron/dist/Electron.app/Contents/MacOS/Electron -i
> require('assert').ok(false)
Thrown:
AssertionError [ERR_ASSERTION]: false == true
    at repl:1:19
    at Script.runInContext (vm.js:137:20)
    at REPLServer.defaultEval (repl.js:386:29)
    at bound (domain.js:420:14)
    at REPLServer.runBound [as eval] (domain.js:433:12)
    at REPLServer.onLine (repl.js:700:10)
    at REPLServer.emit (events.js:203:13)
    at REPLServer.EventEmitter.emit (domain.js:476:20)
    at REPLServer.Interface._onLine (readline.js:316:10)
    at REPLServer.Interface._line (readline.js:693:8) {
  generatedMessage: true,
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '=='
}
```

### Actual Behavior
```
$ yarn add electron@8.0.0
$ node_modules/electron/dist/Electron.app/Contents/MacOS/Electron -i
> require('assert').ok(false)
Thrown:
TypeError: call.getFileName is not a function
    at getErrMessage (assert.js:270:25)
    at innerOk (assert.js:361:17)
    at Function.ok (assert.js:381:3)
    at repl:1:19
    at Script.runInContext (vm.js:127:20)
    at REPLServer.defaultEval (repl.js:406:29)
    at bound (domain.js:420:14)
    at REPLServer.runBound [as eval] (domain.js:433:12)
    at REPLServer.onLine (repl.js:715:10)
    at REPLServer.emit (events.js:210:5)
```
### To Reproduce
See expected/actual behavior.

### Additional Information
I'm assuming this is an Electron bug since it works fine from the node interpreter. If that's not the case please let me know and I can open an issue with the node project.

```
$ node
> process.versions.node
'12.13.0'
> require('assert').ok(false)
Thrown:
AssertionError [ERR_ASSERTION]: false == true
    at repl:1:19
    at Script.runInThisContext (vm.js:116:20)
    at REPLServer.defaultEval (repl.js:404:29)
    at bound (domain.js:420:14)
    at REPLServer.runBound [as eval] (domain.js:433:12)
    at REPLServer.onLine (repl.js:715:10)
    at REPLServer.emit (events.js:215:7)
    at REPLServer.EventEmitter.emit (domain.js:476:20)
    at REPLServer.Interface._onLine (readline.js:316:10)
    at REPLServer.Interface._line (readline.js:693:8) {
  generatedMessage: true,
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '=='
}
```
shell/common/api/electron_bindings.cc
auto metrics = base::ProcessMetrics::CreateCurrentProcessMetrics();
  base::IoCounters io_counters;
  gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate);
  dict.SetHidden("simple", true);
  if (metrics->GetIOCounters(&io_counters)) {
    dict.Set("readOperationCount", io_counters.ReadOperationCount);
    dict.Set("writeOperationCount", io_counters.WriteOperationCount);
    dict.Set("otherOperationCount", io_counters.OtherOperationCount);
    dict.Set("readTransferCount", io_counters.ReadTransferCount);
    dict.Set("writeTransferCount", io_counters.WriteTransferCount);
    dict.Set("otherTransferCount", io_counters.OtherTransferCount);
  }
  return dict.GetHandle();
}
bool ElectronBindings::TakeHeapSnapshot(v8::Isolate* isolate,
                                        const base::FilePath& file_path) {
  base::ThreadRestrictions::ScopedAllowIO allow_io;
  base::File file(file_path,
                  base::File::FLAG_CREATE_ALWAYS | base::File::FLAG_WRITE);
  return electron::TakeHeapSnapshot(isolate, &file);
}
}