@teambit/mocha 1.0.412 → 1.0.413
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/__bit_junit.xml +1 -1
- package/artifacts/preview/teambit_defender_mocha-preview.js +1 -1
- package/artifacts/schema.json +1 -1
- package/dist/mocha.tester.js +1 -1
- package/dist/mocha.tester.js.map +1 -1
- package/dist/{preview-1727087093163.js → preview-1727148128138.js} +2 -2
- package/package.json +6 -6
@@ -1,4 +1,4 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<testsuites tests="0" failures="0" errors="0" skipped="0">
|
3
|
-
<testsuite name="teambit.defender/mocha@1.0.
|
3
|
+
<testsuite name="teambit.defender/mocha@1.0.413" tests="0" failures="0" errors="0" skipped="0"/>
|
4
4
|
</testsuites>
|
@@ -1 +1 @@
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["teambit.defender/mocha-preview"]=t():e["teambit.defender/mocha-preview"]=t()}(self,(()=>(()=>{"use strict";var e={
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["teambit.defender/mocha-preview"]=t():e["teambit.defender/mocha-preview"]=t()}(self,(()=>(()=>{"use strict";var e={62725:(e,t,o)=>{var r={id:"teambit.defender/mocha@1.0.413",homepage:"https://bit.cloud/teambit/defender/mocha",exported:!0};function n(){const e=i(o(41594));return n=function(){return e},e}function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Logo=void 0,n.__bit_component=r,i.__bit_component=r;const a=()=>n().default.createElement("div",{style:{height:"100%",display:"flex",justifyContent:"center"}},n().default.createElement("img",{style:{width:70},src:"https://static.bit.dev/extensions-icons/mocha.svg"}));a.__bit_component=r,t.Logo=a},41594:e=>{e.exports=React}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,o),i.exports}o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};o.r(r),o.d(r,{compositions:()=>f,compositions_metadata:()=>v,overview:()=>m});var n={};o.r(n),o.d(n,{default:()=>l});var i=o(62725);o(41594);const a=MdxJsReact,c=TeambitMdxUiMdxScopeContext;var s=["components"];function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)({}).hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},d.apply(null,arguments)}var p={},u="wrapper";function l(e){var t=e.components,o=function(e,t){if(null==e)return{};var o,r,n=function(e,t){if(null==e)return{};var o={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.includes(r))continue;o[r]=e[r]}return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)o=i[r],t.includes(o)||{}.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}(e,s);return(0,a.mdx)(u,d({},p,o,{components:t,mdxType:"MDXLayout"}),(0,a.mdx)(c.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"}))}l.isMDXComponent=!0;const f=[i],m=[n],v={compositions:[{displayName:"Logo",identifier:"Logo"}]};return r})()));
|
package/artifacts/schema.json
CHANGED
package/dist/mocha.tester.js
CHANGED
@@ -76,7 +76,7 @@ class MochaTester {
|
|
76
76
|
const specsPerComp = context.specFiles.toArray();
|
77
77
|
(0, _register().default)(_objectSpread({
|
78
78
|
extensions: ['.es6', '.es', '.jsx', '.js', '.mjs', '.ts', '.tsx']
|
79
|
-
}, this.babelConfig
|
79
|
+
}, this.babelConfig));
|
80
80
|
const componentsResults = await (0, _pMapSeries().default)(specsPerComp, async ([component, files]) => {
|
81
81
|
const testsFiles = await (0, _pMapSeries().default)(files, async file => {
|
82
82
|
try {
|
package/dist/mocha.tester.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_tester","data","require","_mocha","_interopRequireDefault","_register","_testsResults","_pMapSeries","_lodash","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","MochaTester","constructor","id","logger","mochaConfig","babelConfig","MochaModule","test","context","ui","Tests","clearStatusLine","specsPerComp","specFiles","toArray","babelRegister","extensions","componentsResults","pMapSeries","component","files","testsFiles","file","runMochaOnOneFile","err","errMsg","path","message","error","consoleFailure","TestsFiles","relative","undefined","allComponentErrors","map","testFile","tests","failureErrOrStr","flat","componentId","results","TestsResult","errors","compact","onTestRunComplete","callback","_callback","mocha","addFile","testResults","handleTest","state","Error","title","TestResult","titlePath","duration","Promise","resolve","runner","run","on","type","stats","testsFile","passes","failures","pending","version","Mocha","prototype","exports"],"sources":["mocha.tester.ts"],"sourcesContent":["import { Logger } from '@teambit/logger';\nimport { ComponentsResults, Tester, CallbackFn, TesterContext, Tests } from '@teambit/tester';\nimport Mocha, { Test } from 'mocha';\nimport babelRegister from '@babel/register';\nimport type { TransformOptions } from '@babel/core';\nimport { TestResult, TestsFiles, TestsResult } from '@teambit/tests-results';\nimport pMapSeries from 'p-map-series';\nimport { AbstractVinyl } from '@teambit/component.sources';\nimport { compact } from 'lodash';\n\nexport class MochaTester implements Tester {\n _callback: CallbackFn | undefined;\n displayName = 'Mocha';\n constructor(\n readonly id: string,\n private logger: Logger,\n readonly mochaConfig: Mocha.MochaOptions,\n /**\n * babel config are needed when the spec files are not native javascript and need to be compiled.\n * pass the same config you pass to your babel compiler if you're using one.\n */\n private babelConfig: TransformOptions,\n private MochaModule: typeof Mocha\n ) {}\n async test(context: TesterContext): Promise<Tests> {\n if (context.ui) {\n // @todo: maybe support UI tests at some point\n return new Tests([]);\n }\n this.logger.clearStatusLine();\n const specsPerComp = context.specFiles.toArray();\n babelRegister({\n extensions: ['.es6', '.es', '.jsx', '.js', '.mjs', '.ts', '.tsx'],\n ...(this.babelConfig || {}),\n });\n const componentsResults: ComponentsResults[] = await pMapSeries(specsPerComp, async ([component, files]) => {\n const testsFiles: TestsFiles[] = await pMapSeries(files, async (file) => {\n try {\n return await this.runMochaOnOneFile(file);\n } catch (err: any) {\n const errMsg = `Mocha found an error while working on \"${file.path}\". ${err.message}`;\n this.logger.error(errMsg, err);\n this.logger.consoleFailure(errMsg);\n return new TestsFiles(file.relative, [], 0, 0, 0, undefined, undefined, err);\n }\n });\n const allComponentErrors = testsFiles\n .map((testFile) => testFile.error || testFile.tests.map((test) => test.failureErrOrStr as Error))\n .flat();\n return {\n componentId: component.id,\n results: new TestsResult(testsFiles),\n errors: compact(allComponentErrors),\n };\n });\n return new Tests(componentsResults);\n }\n\n /**\n * @todo: make this work. currently, it doesn't update the UI upon changes.\n */\n // async watch(context: TesterContext): Promise<Tests> {\n // const results = await this.test(context);\n // if (this._callback) {\n // this._callback(results);\n // }\n // return results;\n // }\n\n async onTestRunComplete(callback: CallbackFn) {\n this._callback = callback;\n }\n\n private async runMochaOnOneFile(file: AbstractVinyl): Promise<TestsFiles> {\n const mocha = new this.MochaModule(this.mochaConfig);\n mocha.addFile(file.path);\n const testResults: TestResult[] = [];\n const handleTest = (test: Test) => {\n const state = test.state;\n if (!state) {\n throw new Error(`the test.state of \"${test.title}\", file \"${file.path}\" is neither passed nor failed`);\n }\n testResults.push(new TestResult(test.titlePath(), test.title, state, test.duration, undefined, test.err));\n };\n return new Promise((resolve) => {\n const runner = mocha\n .run()\n .on('test end', (test) => handleTest(test))\n .on('fail', (test) => {\n if (test.type !== 'test') {\n // otherwise, it was handled already in \"test end\" event.\n // this is mainly for test.type of \"hook\", e.g. \"before\", \"after\", \"beforeAll\", \"afterAll\"\n handleTest(test);\n }\n })\n .on('end', function () {\n const stats = runner.stats;\n if (!stats) throw new Error('stats is missing');\n const testsFile = new TestsFiles(\n file.relative,\n testResults,\n stats.passes,\n stats.failures,\n stats.pending,\n stats.duration\n );\n resolve(testsFile);\n });\n });\n }\n\n version(): string {\n // @ts-ignore\n return Mocha.prototype.version || 'N/A';\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["_tester","data","require","_mocha","_interopRequireDefault","_register","_testsResults","_pMapSeries","_lodash","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","MochaTester","constructor","id","logger","mochaConfig","babelConfig","MochaModule","test","context","ui","Tests","clearStatusLine","specsPerComp","specFiles","toArray","babelRegister","extensions","componentsResults","pMapSeries","component","files","testsFiles","file","runMochaOnOneFile","err","errMsg","path","message","error","consoleFailure","TestsFiles","relative","undefined","allComponentErrors","map","testFile","tests","failureErrOrStr","flat","componentId","results","TestsResult","errors","compact","onTestRunComplete","callback","_callback","mocha","addFile","testResults","handleTest","state","Error","title","TestResult","titlePath","duration","Promise","resolve","runner","run","on","type","stats","testsFile","passes","failures","pending","version","Mocha","prototype","exports"],"sources":["mocha.tester.ts"],"sourcesContent":["import { Logger } from '@teambit/logger';\nimport { ComponentsResults, Tester, CallbackFn, TesterContext, Tests } from '@teambit/tester';\nimport Mocha, { Test } from 'mocha';\nimport babelRegister from '@babel/register';\nimport type { TransformOptions } from '@babel/core';\nimport { TestResult, TestsFiles, TestsResult } from '@teambit/tests-results';\nimport pMapSeries from 'p-map-series';\nimport { AbstractVinyl } from '@teambit/component.sources';\nimport { compact } from 'lodash';\n\nexport class MochaTester implements Tester {\n _callback: CallbackFn | undefined;\n displayName = 'Mocha';\n constructor(\n readonly id: string,\n private logger: Logger,\n readonly mochaConfig: Mocha.MochaOptions,\n /**\n * babel config are needed when the spec files are not native javascript and need to be compiled.\n * pass the same config you pass to your babel compiler if you're using one.\n */\n private babelConfig: TransformOptions,\n private MochaModule: typeof Mocha\n ) {}\n async test(context: TesterContext): Promise<Tests> {\n if (context.ui) {\n // @todo: maybe support UI tests at some point\n return new Tests([]);\n }\n this.logger.clearStatusLine();\n const specsPerComp = context.specFiles.toArray();\n babelRegister({\n extensions: ['.es6', '.es', '.jsx', '.js', '.mjs', '.ts', '.tsx'],\n ...this.babelConfig,\n });\n const componentsResults: ComponentsResults[] = await pMapSeries(specsPerComp, async ([component, files]) => {\n const testsFiles: TestsFiles[] = await pMapSeries(files, async (file) => {\n try {\n return await this.runMochaOnOneFile(file);\n } catch (err: any) {\n const errMsg = `Mocha found an error while working on \"${file.path}\". ${err.message}`;\n this.logger.error(errMsg, err);\n this.logger.consoleFailure(errMsg);\n return new TestsFiles(file.relative, [], 0, 0, 0, undefined, undefined, err);\n }\n });\n const allComponentErrors = testsFiles\n .map((testFile) => testFile.error || testFile.tests.map((test) => test.failureErrOrStr as Error))\n .flat();\n return {\n componentId: component.id,\n results: new TestsResult(testsFiles),\n errors: compact(allComponentErrors),\n };\n });\n return new Tests(componentsResults);\n }\n\n /**\n * @todo: make this work. currently, it doesn't update the UI upon changes.\n */\n // async watch(context: TesterContext): Promise<Tests> {\n // const results = await this.test(context);\n // if (this._callback) {\n // this._callback(results);\n // }\n // return results;\n // }\n\n async onTestRunComplete(callback: CallbackFn) {\n this._callback = callback;\n }\n\n private async runMochaOnOneFile(file: AbstractVinyl): Promise<TestsFiles> {\n const mocha = new this.MochaModule(this.mochaConfig);\n mocha.addFile(file.path);\n const testResults: TestResult[] = [];\n const handleTest = (test: Test) => {\n const state = test.state;\n if (!state) {\n throw new Error(`the test.state of \"${test.title}\", file \"${file.path}\" is neither passed nor failed`);\n }\n testResults.push(new TestResult(test.titlePath(), test.title, state, test.duration, undefined, test.err));\n };\n return new Promise((resolve) => {\n const runner = mocha\n .run()\n .on('test end', (test) => handleTest(test))\n .on('fail', (test) => {\n if (test.type !== 'test') {\n // otherwise, it was handled already in \"test end\" event.\n // this is mainly for test.type of \"hook\", e.g. \"before\", \"after\", \"beforeAll\", \"afterAll\"\n handleTest(test);\n }\n })\n .on('end', function () {\n const stats = runner.stats;\n if (!stats) throw new Error('stats is missing');\n const testsFile = new TestsFiles(\n file.relative,\n testResults,\n stats.passes,\n stats.failures,\n stats.pending,\n stats.duration\n );\n resolve(testsFile);\n });\n });\n }\n\n version(): string {\n // @ts-ignore\n return Mocha.prototype.version || 'N/A';\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,OAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,MAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,UAAA;EAAA,MAAAJ,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAG,SAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAK,cAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,aAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,YAAA;EAAA,MAAAN,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAK,WAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAO,QAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,OAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAiC,SAAAG,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,QAAAH,CAAA,EAAAI,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAP,CAAA,OAAAM,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAR,CAAA,GAAAI,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAX,CAAA,EAAAI,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAf,CAAA,aAAAI,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAD,OAAA,CAAAG,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,IAAAe,eAAA,CAAAnB,CAAA,EAAAI,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAArB,CAAA,EAAAM,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAF,OAAA,CAAAG,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAtB,CAAA,EAAAI,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAJ,CAAA;AAAA,SAAAmB,gBAAAnB,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAmB,cAAA,CAAAnB,CAAA,MAAAJ,CAAA,GAAAM,MAAA,CAAAgB,cAAA,CAAAtB,CAAA,EAAAI,CAAA,IAAAoB,KAAA,EAAAnB,CAAA,EAAAO,UAAA,MAAAa,YAAA,MAAAC,QAAA,UAAA1B,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAuB,eAAAlB,CAAA,QAAAsB,CAAA,GAAAC,YAAA,CAAAvB,CAAA,uCAAAsB,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAvB,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAwB,MAAA,CAAAC,WAAA,kBAAA9B,CAAA,QAAA2B,CAAA,GAAA3B,CAAA,CAAA+B,IAAA,CAAA1B,CAAA,EAAAD,CAAA,uCAAAuB,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAA5B,CAAA,GAAA6B,MAAA,GAAAC,MAAA,EAAA7B,CAAA;AAE1B,MAAM8B,WAAW,CAAmB;EAGzCC,WAAWA,CACAC,EAAU,EACXC,MAAc,EACbC,WAA+B;EACxC;AACJ;AACA;AACA;EACYC,WAA6B,EAC7BC,WAAyB,EACjC;IAAA,KATSJ,EAAU,GAAVA,EAAU;IAAA,KACXC,MAAc,GAAdA,MAAc;IAAA,KACbC,WAA+B,GAA/BA,WAA+B;IAAA,KAKhCC,WAA6B,GAA7BA,WAA6B;IAAA,KAC7BC,WAAyB,GAAzBA,WAAyB;IAAAtB,eAAA;IAAAA,eAAA,sBAVrB,OAAO;EAWlB;EACH,MAAMuB,IAAIA,CAACC,OAAsB,EAAkB;IACjD,IAAIA,OAAO,CAACC,EAAE,EAAE;MACd;MACA,OAAO,KAAIC,eAAK,EAAC,EAAE,CAAC;IACtB;IACA,IAAI,CAACP,MAAM,CAACQ,eAAe,CAAC,CAAC;IAC7B,MAAMC,YAAY,GAAGJ,OAAO,CAACK,SAAS,CAACC,OAAO,CAAC,CAAC;IAChD,IAAAC,mBAAa,EAAAnC,aAAA;MACXoC,UAAU,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAAC,GAC9D,IAAI,CAACX,WAAW,CACpB,CAAC;IACF,MAAMY,iBAAsC,GAAG,MAAM,IAAAC,qBAAU,EAACN,YAAY,EAAE,OAAO,CAACO,SAAS,EAAEC,KAAK,CAAC,KAAK;MAC1G,MAAMC,UAAwB,GAAG,MAAM,IAAAH,qBAAU,EAACE,KAAK,EAAE,MAAOE,IAAI,IAAK;QACvE,IAAI;UACF,OAAO,MAAM,IAAI,CAACC,iBAAiB,CAACD,IAAI,CAAC;QAC3C,CAAC,CAAC,OAAOE,GAAQ,EAAE;UACjB,MAAMC,MAAM,GAAG,0CAA0CH,IAAI,CAACI,IAAI,MAAMF,GAAG,CAACG,OAAO,EAAE;UACrF,IAAI,CAACxB,MAAM,CAACyB,KAAK,CAACH,MAAM,EAAED,GAAG,CAAC;UAC9B,IAAI,CAACrB,MAAM,CAAC0B,cAAc,CAACJ,MAAM,CAAC;UAClC,OAAO,KAAIK,0BAAU,EAACR,IAAI,CAACS,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAEC,SAAS,EAAEA,SAAS,EAAER,GAAG,CAAC;QAC9E;MACF,CAAC,CAAC;MACF,MAAMS,kBAAkB,GAAGZ,UAAU,CAClCa,GAAG,CAAEC,QAAQ,IAAKA,QAAQ,CAACP,KAAK,IAAIO,QAAQ,CAACC,KAAK,CAACF,GAAG,CAAE3B,IAAI,IAAKA,IAAI,CAAC8B,eAAwB,CAAC,CAAC,CAChGC,IAAI,CAAC,CAAC;MACT,OAAO;QACLC,WAAW,EAAEpB,SAAS,CAACjB,EAAE;QACzBsC,OAAO,EAAE,KAAIC,2BAAW,EAACpB,UAAU,CAAC;QACpCqB,MAAM,EAAE,IAAAC,iBAAO,EAACV,kBAAkB;MACpC,CAAC;IACH,CAAC,CAAC;IACF,OAAO,KAAIvB,eAAK,EAACO,iBAAiB,CAAC;EACrC;;EAEA;AACF;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA,MAAM2B,iBAAiBA,CAACC,QAAoB,EAAE;IAC5C,IAAI,CAACC,SAAS,GAAGD,QAAQ;EAC3B;EAEA,MAActB,iBAAiBA,CAACD,IAAmB,EAAuB;IACxE,MAAMyB,KAAK,GAAG,IAAI,IAAI,CAACzC,WAAW,CAAC,IAAI,CAACF,WAAW,CAAC;IACpD2C,KAAK,CAACC,OAAO,CAAC1B,IAAI,CAACI,IAAI,CAAC;IACxB,MAAMuB,WAAyB,GAAG,EAAE;IACpC,MAAMC,UAAU,GAAI3C,IAAU,IAAK;MACjC,MAAM4C,KAAK,GAAG5C,IAAI,CAAC4C,KAAK;MACxB,IAAI,CAACA,KAAK,EAAE;QACV,MAAM,IAAIC,KAAK,CAAC,sBAAsB7C,IAAI,CAAC8C,KAAK,YAAY/B,IAAI,CAACI,IAAI,gCAAgC,CAAC;MACxG;MACAuB,WAAW,CAACvE,IAAI,CAAC,KAAI4E,0BAAU,EAAC/C,IAAI,CAACgD,SAAS,CAAC,CAAC,EAAEhD,IAAI,CAAC8C,KAAK,EAAEF,KAAK,EAAE5C,IAAI,CAACiD,QAAQ,EAAExB,SAAS,EAAEzB,IAAI,CAACiB,GAAG,CAAC,CAAC;IAC3G,CAAC;IACD,OAAO,IAAIiC,OAAO,CAAEC,OAAO,IAAK;MAC9B,MAAMC,MAAM,GAAGZ,KAAK,CACjBa,GAAG,CAAC,CAAC,CACLC,EAAE,CAAC,UAAU,EAAGtD,IAAI,IAAK2C,UAAU,CAAC3C,IAAI,CAAC,CAAC,CAC1CsD,EAAE,CAAC,MAAM,EAAGtD,IAAI,IAAK;QACpB,IAAIA,IAAI,CAACuD,IAAI,KAAK,MAAM,EAAE;UACxB;UACA;UACAZ,UAAU,CAAC3C,IAAI,CAAC;QAClB;MACF,CAAC,CAAC,CACDsD,EAAE,CAAC,KAAK,EAAE,YAAY;QACrB,MAAME,KAAK,GAAGJ,MAAM,CAACI,KAAK;QAC1B,IAAI,CAACA,KAAK,EAAE,MAAM,IAAIX,KAAK,CAAC,kBAAkB,CAAC;QAC/C,MAAMY,SAAS,GAAG,KAAIlC,0BAAU,EAC9BR,IAAI,CAACS,QAAQ,EACbkB,WAAW,EACXc,KAAK,CAACE,MAAM,EACZF,KAAK,CAACG,QAAQ,EACdH,KAAK,CAACI,OAAO,EACbJ,KAAK,CAACP,QACR,CAAC;QACDE,OAAO,CAACM,SAAS,CAAC;MACpB,CAAC,CAAC;IACN,CAAC,CAAC;EACJ;EAEAI,OAAOA,CAAA,EAAW;IAChB;IACA,OAAOC,gBAAK,CAACC,SAAS,CAACF,OAAO,IAAI,KAAK;EACzC;AACF;AAACG,OAAA,CAAAvE,WAAA,GAAAA,WAAA","ignoreList":[]}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.defender_mocha@1.0.
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.defender_mocha@1.0.
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.defender_mocha@1.0.413/dist/mocha.composition.js';
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.defender_mocha@1.0.413/dist/mocha.docs.mdx';
|
3
3
|
|
4
4
|
export const compositions = [compositions_0];
|
5
5
|
export const overview = [overview_0];
|
package/package.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "@teambit/mocha",
|
3
|
-
"version": "1.0.
|
3
|
+
"version": "1.0.413",
|
4
4
|
"homepage": "https://bit.cloud/teambit/defender/mocha",
|
5
5
|
"main": "dist/index.js",
|
6
6
|
"componentId": {
|
7
7
|
"scope": "teambit.defender",
|
8
8
|
"name": "mocha",
|
9
|
-
"version": "1.0.
|
9
|
+
"version": "1.0.413"
|
10
10
|
},
|
11
11
|
"dependencies": {
|
12
12
|
"@babel/core": "7.19.6",
|
@@ -15,10 +15,10 @@
|
|
15
15
|
"p-map-series": "2.1.0",
|
16
16
|
"@teambit/harmony": "0.4.6",
|
17
17
|
"@teambit/tests-results": "1.0.5",
|
18
|
-
"@teambit/cli": "0.0.
|
19
|
-
"@teambit/logger": "0.0.
|
20
|
-
"@teambit/component.sources": "0.0.
|
21
|
-
"@teambit/tester": "1.0.
|
18
|
+
"@teambit/cli": "0.0.990",
|
19
|
+
"@teambit/logger": "0.0.1083",
|
20
|
+
"@teambit/component.sources": "0.0.31",
|
21
|
+
"@teambit/tester": "1.0.413"
|
22
22
|
},
|
23
23
|
"devDependencies": {
|
24
24
|
"@types/lodash": "4.14.165",
|