Failed asynchronous tests result in error rather than adding to test results

When an asynchronous test fails instead of adding to the list of test results like most tests do, including this test when it passes, the assert statement causes an error while evaluating. I am very new to postman so I am trying to determine if this is a bug or if I have made some kind of mistake before submitting a report.

Here are some tests I made to show this:

pm.test("Async should pass", function(done){
    setTimeout(() => {
        pm.expect(true).to.equal(true);
        done();
    }, 1000)
});

pm.test("Async should fail", function(done){
    setTimeout(() => {
        pm.expect.fail();
        done();
    }, 2000)
});

The second test here causes the test results to be replaced with this error.

I found this by trying to run a test assertion with the done callback as shown in the documentation here (https://learning.postman.com/docs/writing-scripts/script-references/postman-sandbox-api-reference/#writing-test-assertions) but forcing it to fail.

I have been able to find a workaround by placing the entire test function within the timeout. However, it feels like the shown tests should work.

Have I made some kind of mistake or should I report this as a bug?