UNPKG

conditional-tag

Version:

Clean, easily readable conditional statements in template literals/strings for Node.js and browsers. Provides `if` / `elseif` / `else` and `switch` / `case` / `default` syntax options.

45 lines (36 loc) 1.46 kB
// Dependencies. import getRepoInfo from 'git-repo-info'; import os from 'node:os'; import { green, yellow } from 'colorette'; const __dirname = new URL('.', import.meta.url).pathname, gitInfo = getRepoInfo(__dirname); /** * */ export const mochaHooks = { beforeAll() { console.log(`Testing time: ${green(new Date().toISOString())}`); // Log info about application and environment. console.log(`Package : ${green(process.env.npm_package_name)}`); console.log(`Version : ${green(process.env.npm_package_version)}`); console.log(`NODE_ENV : ${'NODE_ENV' in process.env ? green(process.env['NODE_ENV']) : yellow('-')}`); // Log info about Git branch, etc… console.log(`Git branch : ${gitInfo.branch ? green(gitInfo.branch) : yellow('-')}`); if (gitInfo.sha) { console.log(`Git revision: ${green(gitInfo.sha.substr(0, 8))} (${gitInfo.sha})`); } else { console.log(`Git revision: ${yellow('-')}`); } // Log info about Node.js. console.log(`Node.js : ${green(process.version)}`); // Log info about the machine. console.log(`OS : ${green(os.type())} ${green(os.release())} (${green(os.platform())})`); console.log(`Hostname : ${green(os.hostname())}`); console.log(`CPUs : ${green(os.cpus().length)}`); console.log(`CPU arch : ${green(os.arch())}`); console.log(`Memory total: ${green('GB ' + Number(os.totalmem() / 1073741824).toFixed(1))}`); console.log(''); } };