UNPKG

@currents/playwright

Version:

Playwright integration and reporter for [Currents](https://currents.dev/playwright) - a cloud dashboard for debugging, troubleshooting and analysing parallel CI tests supporting Cypress and Playwright.

2 lines 3.92 kB
"use strict";var L=Object.create;var p=Object.defineProperty;var W=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var G=Object.getPrototypeOf,Y=Object.prototype.hasOwnProperty;var l=(t,e)=>()=>(t&&(e=t(t=0)),e);var z=(t,e)=>{for(var r in e)p(t,r,{get:e[r],enumerable:!0})},y=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of B(e))!Y.call(t,s)&&s!==r&&p(t,s,{get:()=>e[s],enumerable:!(n=W(e,s))||n.enumerable});return t};var a=(t,e,r)=>(r=t!=null?L(G(t)):{},y(e||!t||!t.__esModule?p(r,"default",{value:t,enumerable:!0}):r,t)),H=t=>y(p({},"__esModule",{value:!0}),t);var o=l(()=>{"use strict"});var m,d=l(()=>{"use strict";o();m=a(require("debug"))});var T,V,S=l(()=>{"use strict";o();T=require("nanoid"),V=(0,T.customAlphabet)("abcdefghijklmnopqrstuvwxyz",10)});var f=l(()=>{"use strict";o()});var D=l(()=>{"use strict";o()});var u,q,Ct,It,Pt,jt,kt,Ft,$t,vt,_t,J,Ot,R=l(()=>{"use strict";o();u=a(require("chalk")),q=a(require("util"));b();f();D();Ct=u.default.cyan,It=u.default.blueBright,Pt=u.default.red,jt=u.default.yellow,kt=u.default.green,Ft=u.default.gray,$t=u.default.white,vt=u.default.black,_t=u.default.magenta,J=u.default.dim,Ot=u.default.bold});var C=l(()=>{"use strict";o();f();R()});function Q(t){return t==="false"?!1:t==="remote"?"remote":t==="full"?"full":!!t}var I,K,P=l(()=>{"use strict";o();I=require("@commander-js/extra-typings"),K=new I.Option("--pwc-debug [boolean | 'remote' | 'full']","enable debug logs for the reporter. Specify 'remote' to upload logs to Currents. Specify 'full' to dump the debug logs to stdout and upload to Currents.").argParser(Q).env("CURRENTS_DEBUG")});var X,j=l(()=>{"use strict";o();X=require("@commander-js/extra-typings");P()});var x,Z,tt,et,rt,re,k=l(()=>{"use strict";o();x=a(require("debug")),Z=a(require("fs")),tt=a(require("path")),et=a(require("util")),rt=require("fs/promises");S();C();j();d();x.default.useColors=function(){return!1};re=x.default.log});var F=l(()=>{"use strict";o();d();k()});var h,b=l(()=>{"use strict";o();F();h=(0,m.default)("currents")});var ut={};z(ut,{DiscoveryReporter:()=>g,default:()=>lt});module.exports=H(ut);o();var U=a(require("fs"));b();o();o();var nt=require("lodash");o();var c=a(require("path"));function $(t,e){return ot(c.default.relative(e,t.file))}function ot(t){return t.split(c.default.sep).join(c.default.posix.sep)}function w(t){let e=t.titlePath(),r=v(t).title;return e.slice(e.indexOf(r)+1,e.length)}function v(t){let e=t.parent;for(;e.parent?.location;)e=e.parent;return e}function _(t,e){let r=v(t).location;return $(r,e.rootDir)}function O(t){return t.id??t._id}function E(t){if(t._only)return!0;let e=t.parent;for(;e.parent;){if(e._only)return!0;e=e.parent}return!1}function A(t){if(!t)return"__currents_no_project__";let r=("__projectId"in t?t.__projectId:"").trim(),n=t.name.trim()?r:`project${r?`-0${r}`:""}`;if(n.length>256)throw new Error(`Project name is too long for ${n}`);return n}function N(t,e){return t.suites.map(r=>{let n=e.projects.find(s=>s.name===r.title);return{name:A(r.project()),tags:(n?.metadata?.pwc?.tags??[]).map(s=>s.trim()),tests:it(r,e)}})}function it(t,e){let r=t.allTests().map(n=>({isOnly:E(n),title:w(n),spec:_(n,e),tags:st(n),testId:O(n)}));return r.some(n=>n.isOnly)?r.filter(n=>n.isOnly):r}function st(t){let e=(w(t).join(" ").match(/@(\S+)/g)??[]).filter(Boolean).map(r=>r);return Array.from(new Set([...e,...t.tags??[]].map(r=>r.trim()).map(r=>r.replace("@",""))))}var M=h.extend("reporter:discovery"),g=class{onBegin(e,r){let n=process.env.CURRENTS_DISCOVERY_PATH;if(M("Discovery path: %s",n),!n)throw new Error("CURRENTS_DISCOVERY_PATH is not set");let s=this.getFullTestSuite(r,e);M("Writing discovery file to %s",n),U.default.writeFileSync(n,JSON.stringify(s,null,2)),console.log(n)}getFullTestSuite(e,r){return N(e,r)}printsToStdio(){return!0}},lt=g;0&&(module.exports={DiscoveryReporter}); //# sourceMappingURL=discovery.js.map