UNPKG

@currents/cmd

Version:

Currents CLI tools

2 lines 3.16 kB
"use strict";var N=Object.create;var a=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var D=Object.getPrototypeOf,W=Object.prototype.hasOwnProperty;var _=(t,e)=>{for(var o in e)a(t,o,{get:e[o],enumerable:!0})},R=(t,e,o,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of P(e))!W.call(t,r)&&r!==o&&a(t,r,{get:()=>e[r],enumerable:!(n=v(e,r))||n.enumerable});return t};var i=(t,e,o)=>(o=t!=null?N(D(t)):{},R(e||!t||!t.__esModule?a(o,"default",{value:t,enumerable:!0}):o,t)),O=t=>R(a({},"__esModule",{value:!0}),t);var B={};_(B,{default:()=>m});module.exports=O(B);var b=require("debug"),$=i(require("fs-extra")),c=(0,b.debug)("currents");var E=i(require("fs-extra"));var w=i(require("crypto"));var H=i(require("fs-extra")),u=i(require("path"));function S(t,e){return L(u.default.relative(e,t))}function L(t){return t.split(u.default.sep).join(u.default.posix.sep)}function C(){return"root"}function y(t){return t.context.config.displayName?.name??t.context.config.id}function x(t){return[...t.ancestorTitles,t.title]}function T(t){return S(t.path,t.context.config.rootDir)}function j(t,e){let o=x(e),n=T(t),r=o.join(" ")+n;return w.default.createHash("sha256").update(r).digest("hex").substring(0,16)}function I(t){let e=(t.join(" ").match(/@(\S+)/g)??[]).filter(Boolean).map(o=>o);return Array.from(new Set([...e].map(o=>o.trim()).map(o=>o.replace("@",""))))}var M=[];function F(t){M.push(t)}var s=i(require("chalk")),p=i(require("util"));var k=[];var G=(...t)=>{let e=p.default.format(...t);F(e),console.error(e)};var A=(...t)=>{let e=p.default.format(...Y(t));return k.push(e),c("ERROR: ",p.default.format(...t)),G(s.default.bgRed.white(" ERROR "),e)};var Y=t=>t.map(e=>e instanceof Error?e.message:e);var at=s.default.cyan,ct=s.default.blueBright,ut=s.default.red,pt=s.default.yellow,gt=s.default.green,mt=s.default.gray,ft=s.default.white,dt=s.default.black,xt=s.default.magenta,h=s.default.dim,Tt=s.default.bold;var g=c.extend("jest-discovery"),m=class{constructor(){this.specsWithoutResultsCount=0;this.fullTestSuite={}}onRunStart(e){g("onRunStart, results: %O",e),console.time(h("@currents/jest-discovery"))}onTestFileResult(e,o){let n=y(e);this.fullTestSuite[n]||(this.fullTestSuite[n]={name:n,tags:[],tests:[]});let r=T(e);g("onTestFileResult [%s][%s]",n,r),o.testResults.length===0?(g("Failed to obtain spec results, error:",r,o.failureMessage),this.specsWithoutResultsCount+=1):this.fullTestSuite[n].tests.push(...o.testResults.map(f=>{let d=x(f);return{spec:r,tags:I(d),testId:j(e,f),title:d}}))}async onRunComplete(e,o){let n=process.env.CURRENTS_DISCOVERY_PATH;if(!n)throw new Error("CURRENTS_DISCOVERY_PATH is not set");let r=[];this.specsWithoutResultsCount>0?A("Incomplete full test suite! Run the command with --debug flag."):(r=this.getFullTestSuite(e),g("onRunComplete %s, %o",n,r)),await E.default.writeFile(n,JSON.stringify(r),"utf8"),console.timeEnd(h("@currents/jest-discovery"))}getFullTestSuite(e){let o=Object.values(this.fullTestSuite),n=o.length===1,r=o.length>0&&e.size>0&&[...e][0].config.id===o[0].name;return n&&r&&(o[0].name=C()),o}}; //# sourceMappingURL=reporter.js.map