My truffle-assertions
library can log all emitted events inside a transaction in the same way as truffle normally outputs them on error, except that it also displays indexed arguments' values correctly.
The library can be installed through npm
npm install truffle-assertions
Then, it can be imported at the top of your test file
const truffleAssert = require('truffle-assertions');
And finally it can be used to output all emitted events inside a transaction.
let result = contractInstance.function({from: account[0]});
truffleAssert.prettyPrintEmittedEvents(result);