use mocha as promised to support promises