Estoy tratando de definir estas funciones para ejecutar algunos casos de prueba sincrónicos y asincrónicos con Mocha y Chai en JS, ¿qué estoy haciendo mal? ¿Por qué mi editor está marcando ciertas líneas? 
module.exports = { function myFunctiona () { } function myFunctionb () { for (let i = 0; i < 10000; i++) { new Date(); } } function myFunctionc(done) { setTimeout(done, 0); } function myFunctiond (done) { setTimeout(done, Math.round(Math.random() * 10)); } }Este es un error de sintaxis porque está definiendo un objeto con propiedades, pero no tiene claves de propiedad. Consulte https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Missing_colon_after_property_id para obtener más información.
Por lo general, definiría un objeto como el siguiente (tenga en cuenta también las comas después de cada propiedad):
var object = { property1: 'thing', property2: function() { return 'thing2'; } }así que para cambiar sus funciones a propiedades, establezca la clave de propiedad como el nombre de la función y luego asígnele una función como:
module.exports = { myFunctiona: function () { //nothing }, myFunctionb: function () { for (let i = 0; i < 10000; i++) { new Date(); } }, myFunctionc: function (done) { setTimeout(done, 0); }, myFunctiond: function (done) { setTimeout(done, Math.round(Math.random() * 10)); } };