@teambit/multi-tester 1.0.188 → 1.0.189

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.
@@ -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/multi-tester@1.0.188" tests="0" failures="0" errors="0" skipped="0"/>
3
+ <testsuite name="teambit.defender/multi-tester@1.0.189" 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/multi-tester-preview"]=t():e["teambit.defender/multi-tester-preview"]=t()}(self,(()=>(()=>{"use strict";var e={53300:(e,t,n)=>{Object.defineProperty(t,"Ay",{enumerable:!0,get:function(){return r.default}});var r=o(n(91204));function o(e){return e&&e.__esModule?e:{default:e}}o.__bit_component={id:"teambit.defender/content/tester-overview@1.95.0",homepage:"https://bit.dev/teambit/defender/content/tester-overview",exported:!0}},91204:(e,t,n)=>{var r={id:"teambit.defender/content/tester-overview@1.95.0",homepage:"https://bit.dev/teambit/defender/content/tester-overview",exported:!0};Object.defineProperty(t,"__esModule",{value:!0}),t.default=u,s(n(41594));var o=n(5016),i=n(65682),a=["components"];function s(e){return e&&e.__esModule?e:{default:e}}function p(){return p=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},p.apply(this,arguments)}function d(e,t){if(null==e)return{};var n,r,o=l(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function l(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}s.__bit_component=r,p.__bit_component=r,d.__bit_component=r,l.__bit_component=r;var m={},c="wrapper";function u(e){var t=e.components,n=d(e,a);return(0,o.mdx)(c,p({},m,n,{components:t,mdxType:"MDXLayout"}),(0,o.mdx)(i.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"},(0,o.mdx)("h1",null,"Tester Overview"),(0,o.mdx)("p",null,"The ",(0,o.mdx)("em",{parentName:"p"},"Tester")," provides a unified interface for testing components regardless of the specific tester they use."),(0,o.mdx)("p",null,"Software testing is a way to validate that an application or a module of it, behaves as expected."),(0,o.mdx)("p",null,"Web applications and services are often tested using a set of testing tools, where each tool plays a different role. For example, ",(0,o.mdx)("a",{parentName:"p",href:"https://jestjs.io/"},"Jest")," can be used as a test runner and as an assertion library, while ",(0,o.mdx)("a",{parentName:"p",href:"https://testing-library.com/"},"React Testing Library")," can be used for testing utilities."),(0,o.mdx)("p",null,"The Tester aspect is responsible for standardizing test execution for components; That is, it standardizes the way test runners are used. Other testing libraries used for utils, mocks, etc., are irrelevant, in that sense."),(0,o.mdx)("p",null,"Standardization is done for component testing during development (in the workspace) as well as for distribution (in a capsule ",", as part of the component ",(0,o.mdx)("a",{parentName:"p",href:"/builder/build-pipelines"},"build pipeline"),")."),(0,o.mdx)("h2",null,"Testing in development"),(0,o.mdx)("p",null,"Bit tests all components in the ",(0,o.mdx)("a",{parentName:"p",href:"/workspace/overview"},"Workspace")," using just a single command. That is true for components of all types, regardless of their specific ",(0,o.mdx)("a",{parentName:"p",href:"/envs/overview"},"Env"),", and as a consequence of that, their specific ",(0,o.mdx)("a",{parentName:"p",href:"/tester/overview"},"Tester implementation")," and configuration."),(0,o.mdx)("pre",null,(0,o.mdx)("code",{parentName:"pre",className:"language-bash"},"bit test\n")),(0,o.mdx)("p",null,"Components can be watched for changes and retested with a single command, as well."),(0,o.mdx)("pre",null,(0,o.mdx)("code",{parentName:"pre",className:"language-bash"},"bit test -w\n")),(0,o.mdx)("p",null,"To learn more on testing during development, please refer to ",(0,o.mdx)("a",{parentName:"p",href:"/tester/workspace-testing"},"Workspace Testing"),"."),(0,o.mdx)("h2",null,"Testing during build"),(0,o.mdx)("p",null,"Testing components for distribution is done during ",(0,o.mdx)("inlineCode",{parentName:"p"},"build")," by the Bit ",(0,o.mdx)("a",{parentName:"p",href:"/builder/overview"},"Builder"),"."),(0,o.mdx)("p",null,"Component build can be simulated with ",(0,o.mdx)("inlineCode",{parentName:"p"},"bit build")," and done through ",(0,o.mdx)("a",{parentName:"p",href:"/components/tags"},"Tag")," or ",(0,o.mdx)("a",{parentName:"p",href:"/components/snaps"},"Snap")),(0,o.mdx)("pre",null,(0,o.mdx)("code",{parentName:"pre",className:"language-bash"},"bit build\n")),(0,o.mdx)("p",null,"By default, Bit's pre-configured Envs includes a ",(0,o.mdx)("a",{parentName:"p",href:"/builder/overview#build-task"},"Build Task")," for testing components in the ",(0,o.mdx)("a",{parentName:"p",href:"/builder/build-pipelines"},"Build Pipeline"),", each using the Env's specific test configs."),(0,o.mdx)("p",null,"Testing during build provides the highest \"external validity\" by running tests on the distributable code that was generated by the Env's compiler and not by the tester's.\nThat way, the exact same code that will be consumed by other components, is tested before it is released. Moreover, since each component is tested in a capsule ",", isolated from the rest of the workspace, tests are guaranteed to provide results that are context-agnostic and free of false-positives."),(0,o.mdx)("h2",null,"Configuring and implementing Testers"),(0,o.mdx)("p",null,"Testers are configured in the ",(0,o.mdx)("a",{parentName:"p",href:"/envs/overview"},"Env")," which is configured on your ",(0,o.mdx)("a",{parentName:"p",href:"/components/overview"},"Component"),". Customizing the Tester can be done by ",(0,o.mdx)("a",{parentName:"p",href:"/envs/services/testing"},"customizing an existing env with your tester")," or by ",(0,o.mdx)("a",{parentName:"p",href:"/envs/customizing-env"},"implementing your own Env"),"."),(0,o.mdx)("p",null,"Tester can also be implemented into Bit through few interfaces. \x3c!--TODO For more information on implementing your own compiler please refer to ",(0,o.mdx)("a",{parentName:"p",href:"/"},"Implement a Compiler"),".")))}u.__bit_component=r,u.isMDXComponent=!0},39551:(e,t,n)=>{var r={id:"teambit.defender/multi-tester@1.0.188",homepage:"https://bit.cloud/teambit/defender/multi-tester",exported:!0};function o(){const e=i(n(41594));return o=function(){return e},e}function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Logo=void 0,o.__bit_component=r,i.__bit_component=r;const a=()=>o().default.createElement("div",{style:{height:"100%",display:"flex",justifyContent:"center"}},o().default.createElement("img",{style:{width:70},src:"https://static.bit.dev/extensions-icons/tester.svg"}));a.__bit_component=r,t.Logo=a},5016:e=>{e.exports=MdxJsReact},41594:e=>{e.exports=React},65682:e=>{e.exports=TeambitMdxUiMdxScopeContext}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,n),i.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{n.r(r),n.d(r,{compositions:()=>c,compositions_metadata:()=>f,overview:()=>u});var e={};n.r(e),n.d(e,{default:()=>m});var t=n(39551),o=(n(41594),n(5016)),i=n(65682),a=n(53300),s=["components"];function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},p.apply(this,arguments)}var d={},l="wrapper";function m(e){var t=e.components,n=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,s);return(0,o.mdx)(l,p({},d,n,{components:t,mdxType:"MDXLayout"}),(0,o.mdx)(i.MDXScopeProvider,{components:{TesterOverview:a.Ay},mdxType:"MDXScopeProvider"},(0,o.mdx)(a.Ay,{mdxType:"TesterOverview"})))}m.isMDXComponent=!0;const c=[t],u=[e],f={compositions:[{displayName:"Logo",identifier:"Logo"}]}})(),r})()));
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/multi-tester-preview"]=t():e["teambit.defender/multi-tester-preview"]=t()}(self,(()=>(()=>{"use strict";var e={61968:(e,t,n)=>{Object.defineProperty(t,"Ay",{enumerable:!0,get:function(){return r.default}});var r=o(n(89752));function o(e){return e&&e.__esModule?e:{default:e}}o.__bit_component={id:"teambit.defender/content/tester-overview@1.95.0",homepage:"https://bit.dev/teambit/defender/content/tester-overview",exported:!0}},89752:(e,t,n)=>{var r={id:"teambit.defender/content/tester-overview@1.95.0",homepage:"https://bit.dev/teambit/defender/content/tester-overview",exported:!0};Object.defineProperty(t,"__esModule",{value:!0}),t.default=u,s(n(41594));var o=n(5016),i=n(65682),a=["components"];function s(e){return e&&e.__esModule?e:{default:e}}function p(){return p=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},p.apply(this,arguments)}function d(e,t){if(null==e)return{};var n,r,o=l(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function l(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}s.__bit_component=r,p.__bit_component=r,d.__bit_component=r,l.__bit_component=r;var m={},c="wrapper";function u(e){var t=e.components,n=d(e,a);return(0,o.mdx)(c,p({},m,n,{components:t,mdxType:"MDXLayout"}),(0,o.mdx)(i.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"},(0,o.mdx)("h1",null,"Tester Overview"),(0,o.mdx)("p",null,"The ",(0,o.mdx)("em",{parentName:"p"},"Tester")," provides a unified interface for testing components regardless of the specific tester they use."),(0,o.mdx)("p",null,"Software testing is a way to validate that an application or a module of it, behaves as expected."),(0,o.mdx)("p",null,"Web applications and services are often tested using a set of testing tools, where each tool plays a different role. For example, ",(0,o.mdx)("a",{parentName:"p",href:"https://jestjs.io/"},"Jest")," can be used as a test runner and as an assertion library, while ",(0,o.mdx)("a",{parentName:"p",href:"https://testing-library.com/"},"React Testing Library")," can be used for testing utilities."),(0,o.mdx)("p",null,"The Tester aspect is responsible for standardizing test execution for components; That is, it standardizes the way test runners are used. Other testing libraries used for utils, mocks, etc., are irrelevant, in that sense."),(0,o.mdx)("p",null,"Standardization is done for component testing during development (in the workspace) as well as for distribution (in a capsule ",", as part of the component ",(0,o.mdx)("a",{parentName:"p",href:"/builder/build-pipelines"},"build pipeline"),")."),(0,o.mdx)("h2",null,"Testing in development"),(0,o.mdx)("p",null,"Bit tests all components in the ",(0,o.mdx)("a",{parentName:"p",href:"/workspace/overview"},"Workspace")," using just a single command. That is true for components of all types, regardless of their specific ",(0,o.mdx)("a",{parentName:"p",href:"/envs/overview"},"Env"),", and as a consequence of that, their specific ",(0,o.mdx)("a",{parentName:"p",href:"/tester/overview"},"Tester implementation")," and configuration."),(0,o.mdx)("pre",null,(0,o.mdx)("code",{parentName:"pre",className:"language-bash"},"bit test\n")),(0,o.mdx)("p",null,"Components can be watched for changes and retested with a single command, as well."),(0,o.mdx)("pre",null,(0,o.mdx)("code",{parentName:"pre",className:"language-bash"},"bit test -w\n")),(0,o.mdx)("p",null,"To learn more on testing during development, please refer to ",(0,o.mdx)("a",{parentName:"p",href:"/tester/workspace-testing"},"Workspace Testing"),"."),(0,o.mdx)("h2",null,"Testing during build"),(0,o.mdx)("p",null,"Testing components for distribution is done during ",(0,o.mdx)("inlineCode",{parentName:"p"},"build")," by the Bit ",(0,o.mdx)("a",{parentName:"p",href:"/builder/overview"},"Builder"),"."),(0,o.mdx)("p",null,"Component build can be simulated with ",(0,o.mdx)("inlineCode",{parentName:"p"},"bit build")," and done through ",(0,o.mdx)("a",{parentName:"p",href:"/components/tags"},"Tag")," or ",(0,o.mdx)("a",{parentName:"p",href:"/components/snaps"},"Snap")),(0,o.mdx)("pre",null,(0,o.mdx)("code",{parentName:"pre",className:"language-bash"},"bit build\n")),(0,o.mdx)("p",null,"By default, Bit's pre-configured Envs includes a ",(0,o.mdx)("a",{parentName:"p",href:"/builder/overview#build-task"},"Build Task")," for testing components in the ",(0,o.mdx)("a",{parentName:"p",href:"/builder/build-pipelines"},"Build Pipeline"),", each using the Env's specific test configs."),(0,o.mdx)("p",null,"Testing during build provides the highest \"external validity\" by running tests on the distributable code that was generated by the Env's compiler and not by the tester's.\nThat way, the exact same code that will be consumed by other components, is tested before it is released. Moreover, since each component is tested in a capsule ",", isolated from the rest of the workspace, tests are guaranteed to provide results that are context-agnostic and free of false-positives."),(0,o.mdx)("h2",null,"Configuring and implementing Testers"),(0,o.mdx)("p",null,"Testers are configured in the ",(0,o.mdx)("a",{parentName:"p",href:"/envs/overview"},"Env")," which is configured on your ",(0,o.mdx)("a",{parentName:"p",href:"/components/overview"},"Component"),". Customizing the Tester can be done by ",(0,o.mdx)("a",{parentName:"p",href:"/envs/services/testing"},"customizing an existing env with your tester")," or by ",(0,o.mdx)("a",{parentName:"p",href:"/envs/customizing-env"},"implementing your own Env"),"."),(0,o.mdx)("p",null,"Tester can also be implemented into Bit through few interfaces. \x3c!--TODO For more information on implementing your own compiler please refer to ",(0,o.mdx)("a",{parentName:"p",href:"/"},"Implement a Compiler"),".")))}u.__bit_component=r,u.isMDXComponent=!0},61208:(e,t,n)=>{var r={id:"teambit.defender/multi-tester@1.0.189",homepage:"https://bit.cloud/teambit/defender/multi-tester",exported:!0};function o(){const e=i(n(41594));return o=function(){return e},e}function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Logo=void 0,o.__bit_component=r,i.__bit_component=r;const a=()=>o().default.createElement("div",{style:{height:"100%",display:"flex",justifyContent:"center"}},o().default.createElement("img",{style:{width:70},src:"https://static.bit.dev/extensions-icons/tester.svg"}));a.__bit_component=r,t.Logo=a},5016:e=>{e.exports=MdxJsReact},41594:e=>{e.exports=React},65682:e=>{e.exports=TeambitMdxUiMdxScopeContext}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,n),i.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{n.r(r),n.d(r,{compositions:()=>c,compositions_metadata:()=>f,overview:()=>u});var e={};n.r(e),n.d(e,{default:()=>m});var t=n(61208),o=(n(41594),n(5016)),i=n(65682),a=n(61968),s=["components"];function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},p.apply(this,arguments)}var d={},l="wrapper";function m(e){var t=e.components,n=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,s);return(0,o.mdx)(l,p({},d,n,{components:t,mdxType:"MDXLayout"}),(0,o.mdx)(i.MDXScopeProvider,{components:{TesterOverview:a.Ay},mdxType:"MDXScopeProvider"},(0,o.mdx)(a.Ay,{mdxType:"TesterOverview"})))}m.isMDXComponent=!0;const c=[t],u=[e],f={compositions:[{displayName:"Logo",identifier:"Logo"}]}})(),r})()));
@@ -0,0 +1,1075 @@
1
+ {
2
+ "__schema": "APISchema",
3
+ "location": {
4
+ "filePath": "index.ts",
5
+ "line": 1,
6
+ "character": 1
7
+ },
8
+ "module": {
9
+ "__schema": "ModuleSchema",
10
+ "location": {
11
+ "filePath": "index.ts",
12
+ "line": 1,
13
+ "character": 1
14
+ },
15
+ "exports": [
16
+ {
17
+ "__schema": "VariableLikeSchema",
18
+ "location": {
19
+ "filePath": "multi-tester.aspect.ts",
20
+ "line": 3,
21
+ "character": 14
22
+ },
23
+ "signature": "const MultiTesterAspect: Aspect",
24
+ "name": "MultiTesterAspect",
25
+ "type": {
26
+ "__schema": "TypeRefSchema",
27
+ "location": {
28
+ "filePath": "multi-tester.aspect.ts",
29
+ "line": 3,
30
+ "character": 14
31
+ },
32
+ "name": "Aspect",
33
+ "componentId": {
34
+ "scope": "teambit.harmony",
35
+ "name": "harmony",
36
+ "version": "0.4.6"
37
+ }
38
+ },
39
+ "isOptional": false,
40
+ "defaultValue": "Aspect.create({\n id: 'teambit.defender/multi-tester',\n})"
41
+ },
42
+ {
43
+ "__schema": "ClassSchema",
44
+ "location": {
45
+ "filePath": "multi-tester.main.runtime.ts",
46
+ "line": 6,
47
+ "character": 1
48
+ },
49
+ "signature": "class MultiTesterMain",
50
+ "name": "MultiTesterMain",
51
+ "members": [
52
+ {
53
+ "__schema": "FunctionLikeSchema",
54
+ "location": {
55
+ "filePath": "multi-tester.main.runtime.ts",
56
+ "line": 11,
57
+ "character": 3
58
+ },
59
+ "doc": {
60
+ "__schema": "DocSchema",
61
+ "location": {
62
+ "filePath": "multi-tester.main.runtime.ts",
63
+ "line": 7,
64
+ "character": 3
65
+ },
66
+ "raw": "/**\n * create a multi-tester `Tester` instance.\n * @param testers list of testers to include.\n */",
67
+ "comment": "create a multi-tester `Tester` instance.",
68
+ "tags": [
69
+ {
70
+ "__schema": "PropertyLikeTagSchema",
71
+ "location": {
72
+ "filePath": "multi-tester.main.runtime.ts",
73
+ "line": 9,
74
+ "character": 6
75
+ },
76
+ "name": "testers",
77
+ "tagName": "parameter",
78
+ "comment": "list of testers to include."
79
+ }
80
+ ]
81
+ },
82
+ "signature": "(method) MultiTesterMain.createTester(testers: Tester[]): MultiTester",
83
+ "name": "createTester",
84
+ "params": [
85
+ {
86
+ "__schema": "ParameterSchema",
87
+ "location": {
88
+ "filePath": "multi-tester.main.runtime.ts",
89
+ "line": 11,
90
+ "character": 16
91
+ },
92
+ "name": "testers",
93
+ "type": {
94
+ "__schema": "TypeArraySchema",
95
+ "location": {
96
+ "filePath": "multi-tester.main.runtime.ts",
97
+ "line": 11,
98
+ "character": 25
99
+ },
100
+ "type": {
101
+ "__schema": "TypeRefSchema",
102
+ "location": {
103
+ "filePath": "multi-tester.main.runtime.ts",
104
+ "line": 11,
105
+ "character": 25
106
+ },
107
+ "name": "Tester",
108
+ "componentId": {
109
+ "scope": "teambit.defender",
110
+ "name": "tester"
111
+ }
112
+ }
113
+ },
114
+ "isOptional": false,
115
+ "isSpread": false
116
+ }
117
+ ],
118
+ "returnType": {
119
+ "__schema": "TypeRefSchema",
120
+ "location": {
121
+ "filePath": "multi-tester.main.runtime.ts",
122
+ "line": 11,
123
+ "character": 3
124
+ },
125
+ "name": "MultiTester"
126
+ },
127
+ "modifiers": []
128
+ },
129
+ {
130
+ "__schema": "VariableLikeSchema",
131
+ "location": {
132
+ "filePath": "multi-tester.main.runtime.ts",
133
+ "line": 15,
134
+ "character": 3
135
+ },
136
+ "signature": "(property) MultiTesterMain.runtime: RuntimeDefinition",
137
+ "name": "runtime",
138
+ "type": {
139
+ "__schema": "InferenceTypeSchema",
140
+ "location": {
141
+ "filePath": "multi-tester.main.runtime.ts",
142
+ "line": 15,
143
+ "character": 3
144
+ },
145
+ "type": "RuntimeDefinition"
146
+ },
147
+ "isOptional": true,
148
+ "defaultValue": "MainRuntime"
149
+ },
150
+ {
151
+ "__schema": "FunctionLikeSchema",
152
+ "location": {
153
+ "filePath": "multi-tester.main.runtime.ts",
154
+ "line": 17,
155
+ "character": 3
156
+ },
157
+ "signature": "(method) MultiTesterMain.provider(): Promise<MultiTesterMain>",
158
+ "name": "provider",
159
+ "params": [],
160
+ "returnType": {
161
+ "__schema": "InferenceTypeSchema",
162
+ "location": {
163
+ "filePath": "multi-tester.main.runtime.ts",
164
+ "line": 17,
165
+ "character": 3
166
+ },
167
+ "type": "Promise<MultiTesterMain>"
168
+ },
169
+ "modifiers": [
170
+ "static",
171
+ "async"
172
+ ]
173
+ }
174
+ ],
175
+ "extendsNodes": [],
176
+ "implementNodes": []
177
+ },
178
+ {
179
+ "__schema": "ClassSchema",
180
+ "location": {
181
+ "filePath": "multi-tester.tester.ts",
182
+ "line": 10,
183
+ "character": 1
184
+ },
185
+ "signature": "class MultiTester",
186
+ "name": "MultiTester",
187
+ "members": [
188
+ {
189
+ "__schema": "VariableLikeSchema",
190
+ "location": {
191
+ "filePath": "multi-tester.tester.ts",
192
+ "line": 11,
193
+ "character": 3
194
+ },
195
+ "signature": "(property) MultiTester.displayName: string",
196
+ "name": "displayName",
197
+ "type": {
198
+ "__schema": "InferenceTypeSchema",
199
+ "location": {
200
+ "filePath": "multi-tester.tester.ts",
201
+ "line": 11,
202
+ "character": 3
203
+ },
204
+ "type": "string"
205
+ },
206
+ "isOptional": true,
207
+ "defaultValue": "'Multi tester'"
208
+ },
209
+ {
210
+ "__schema": "ConstructorSchema",
211
+ "location": {
212
+ "filePath": "multi-tester.tester.ts",
213
+ "line": 13,
214
+ "character": 3
215
+ },
216
+ "signature": "constructor MultiTester(id: string, testers: Tester[]): MultiTester",
217
+ "name": "constructor",
218
+ "params": [
219
+ {
220
+ "__schema": "ParameterSchema",
221
+ "location": {
222
+ "filePath": "multi-tester.tester.ts",
223
+ "line": 13,
224
+ "character": 15
225
+ },
226
+ "name": "id",
227
+ "type": {
228
+ "__schema": "KeywordTypeSchema",
229
+ "location": {
230
+ "filePath": "multi-tester.tester.ts",
231
+ "line": 13,
232
+ "character": 28
233
+ },
234
+ "name": "string"
235
+ },
236
+ "isOptional": false,
237
+ "isSpread": false
238
+ },
239
+ {
240
+ "__schema": "ParameterSchema",
241
+ "location": {
242
+ "filePath": "multi-tester.tester.ts",
243
+ "line": 13,
244
+ "character": 36
245
+ },
246
+ "name": "testers",
247
+ "type": {
248
+ "__schema": "TypeArraySchema",
249
+ "location": {
250
+ "filePath": "multi-tester.tester.ts",
251
+ "line": 13,
252
+ "character": 54
253
+ },
254
+ "type": {
255
+ "__schema": "TypeRefSchema",
256
+ "location": {
257
+ "filePath": "multi-tester.tester.ts",
258
+ "line": 13,
259
+ "character": 54
260
+ },
261
+ "name": "Tester",
262
+ "componentId": {
263
+ "scope": "teambit.defender",
264
+ "name": "tester"
265
+ }
266
+ }
267
+ },
268
+ "isOptional": false,
269
+ "isSpread": false
270
+ }
271
+ ],
272
+ "returnType": {
273
+ "__schema": "ThisTypeSchema",
274
+ "location": {
275
+ "filePath": "multi-tester.tester.ts",
276
+ "line": 10,
277
+ "character": 1
278
+ },
279
+ "name": "MultiTester"
280
+ },
281
+ "modifiers": []
282
+ },
283
+ {
284
+ "__schema": "FunctionLikeSchema",
285
+ "location": {
286
+ "filePath": "multi-tester.tester.ts",
287
+ "line": 15,
288
+ "character": 3
289
+ },
290
+ "signature": "(method) MultiTester.displayConfig(): string",
291
+ "name": "displayConfig",
292
+ "params": [],
293
+ "returnType": {
294
+ "__schema": "InferenceTypeSchema",
295
+ "location": {
296
+ "filePath": "multi-tester.tester.ts",
297
+ "line": 15,
298
+ "character": 3
299
+ },
300
+ "type": "string"
301
+ },
302
+ "modifiers": []
303
+ },
304
+ {
305
+ "__schema": "FunctionLikeSchema",
306
+ "location": {
307
+ "filePath": "multi-tester.tester.ts",
308
+ "line": 23,
309
+ "character": 3
310
+ },
311
+ "signature": "(method) MultiTester.test(context: TesterContext): Promise<Tests>",
312
+ "name": "test",
313
+ "params": [
314
+ {
315
+ "__schema": "ParameterSchema",
316
+ "location": {
317
+ "filePath": "multi-tester.tester.ts",
318
+ "line": 23,
319
+ "character": 14
320
+ },
321
+ "name": "context",
322
+ "type": {
323
+ "__schema": "TypeRefSchema",
324
+ "location": {
325
+ "filePath": "multi-tester.tester.ts",
326
+ "line": 23,
327
+ "character": 23
328
+ },
329
+ "name": "TesterContext",
330
+ "componentId": {
331
+ "scope": "teambit.defender",
332
+ "name": "tester"
333
+ }
334
+ },
335
+ "isOptional": false,
336
+ "isSpread": false
337
+ }
338
+ ],
339
+ "returnType": {
340
+ "__schema": "TypeRefSchema",
341
+ "location": {
342
+ "filePath": "multi-tester.tester.ts",
343
+ "line": 23,
344
+ "character": 39
345
+ },
346
+ "name": "Promise",
347
+ "typeArgs": [
348
+ {
349
+ "__schema": "TypeRefSchema",
350
+ "location": {
351
+ "filePath": "multi-tester.tester.ts",
352
+ "line": 23,
353
+ "character": 47
354
+ },
355
+ "name": "Tests",
356
+ "componentId": {
357
+ "scope": "teambit.defender",
358
+ "name": "tester"
359
+ }
360
+ }
361
+ ]
362
+ },
363
+ "modifiers": [
364
+ "async"
365
+ ]
366
+ },
367
+ {
368
+ "__schema": "FunctionLikeSchema",
369
+ "location": {
370
+ "filePath": "multi-tester.tester.ts",
371
+ "line": 32,
372
+ "character": 3
373
+ },
374
+ "signature": "(method) MultiTester.watch(context: TesterContext): Promise<Tests>",
375
+ "name": "watch",
376
+ "params": [
377
+ {
378
+ "__schema": "ParameterSchema",
379
+ "location": {
380
+ "filePath": "multi-tester.tester.ts",
381
+ "line": 32,
382
+ "character": 15
383
+ },
384
+ "name": "context",
385
+ "type": {
386
+ "__schema": "TypeRefSchema",
387
+ "location": {
388
+ "filePath": "multi-tester.tester.ts",
389
+ "line": 32,
390
+ "character": 24
391
+ },
392
+ "name": "TesterContext",
393
+ "componentId": {
394
+ "scope": "teambit.defender",
395
+ "name": "tester"
396
+ }
397
+ },
398
+ "isOptional": false,
399
+ "isSpread": false
400
+ }
401
+ ],
402
+ "returnType": {
403
+ "__schema": "TypeRefSchema",
404
+ "location": {
405
+ "filePath": "multi-tester.tester.ts",
406
+ "line": 32,
407
+ "character": 40
408
+ },
409
+ "name": "Promise",
410
+ "typeArgs": [
411
+ {
412
+ "__schema": "TypeRefSchema",
413
+ "location": {
414
+ "filePath": "multi-tester.tester.ts",
415
+ "line": 32,
416
+ "character": 48
417
+ },
418
+ "name": "Tests",
419
+ "componentId": {
420
+ "scope": "teambit.defender",
421
+ "name": "tester"
422
+ }
423
+ }
424
+ ]
425
+ },
426
+ "modifiers": [
427
+ "async"
428
+ ]
429
+ },
430
+ {
431
+ "__schema": "FunctionLikeSchema",
432
+ "location": {
433
+ "filePath": "multi-tester.tester.ts",
434
+ "line": 43,
435
+ "character": 3
436
+ },
437
+ "doc": {
438
+ "__schema": "DocSchema",
439
+ "location": {
440
+ "filePath": "multi-tester.tester.ts",
441
+ "line": 40,
442
+ "character": 3
443
+ },
444
+ "raw": "/**\n * returns the version of all testers instance (e.g. '4.0.1').\n */",
445
+ "comment": "returns the version of all testers instance (e.g. '4.0.1')."
446
+ },
447
+ "signature": "(method) MultiTester.version(): string",
448
+ "name": "version",
449
+ "params": [],
450
+ "returnType": {
451
+ "__schema": "KeywordTypeSchema",
452
+ "location": {
453
+ "filePath": "multi-tester.tester.ts",
454
+ "line": 43,
455
+ "character": 14
456
+ },
457
+ "name": "string"
458
+ },
459
+ "modifiers": []
460
+ }
461
+ ],
462
+ "extendsNodes": [],
463
+ "implementNodes": [
464
+ {
465
+ "__schema": "ExpressionWithTypeArgumentsSchema",
466
+ "location": {
467
+ "filePath": "multi-tester.tester.ts",
468
+ "line": 10,
469
+ "character": 37
470
+ },
471
+ "name": "implements Tester",
472
+ "typeArgs": [],
473
+ "expression": {
474
+ "__schema": "TypeRefSchema",
475
+ "location": {
476
+ "filePath": "multi-tester.tester.ts",
477
+ "line": 10,
478
+ "character": 37
479
+ },
480
+ "name": "Tester",
481
+ "componentId": {
482
+ "_legacy": {
483
+ "scope": "teambit.defender",
484
+ "name": "multi-tester",
485
+ "version": "1.0.189"
486
+ },
487
+ "_scope": "teambit.defender"
488
+ }
489
+ }
490
+ }
491
+ ]
492
+ },
493
+ {
494
+ "__schema": "UnImplementedSchema",
495
+ "location": {
496
+ "filePath": "index.ts",
497
+ "line": 6,
498
+ "character": 16
499
+ },
500
+ "name": "MultiTesterAspect",
501
+ "type": "Identifier"
502
+ }
503
+ ],
504
+ "internals": []
505
+ },
506
+ "internals": [
507
+ {
508
+ "__schema": "ModuleSchema",
509
+ "location": {
510
+ "filePath": "multi-tester.aspect.ts",
511
+ "line": 1,
512
+ "character": 1
513
+ },
514
+ "exports": [
515
+ {
516
+ "__schema": "VariableLikeSchema",
517
+ "location": {
518
+ "filePath": "multi-tester.aspect.ts",
519
+ "line": 3,
520
+ "character": 14
521
+ },
522
+ "signature": "const MultiTesterAspect: Aspect",
523
+ "name": "MultiTesterAspect",
524
+ "type": {
525
+ "__schema": "TypeRefSchema",
526
+ "location": {
527
+ "filePath": "multi-tester.aspect.ts",
528
+ "line": 3,
529
+ "character": 14
530
+ },
531
+ "name": "Aspect",
532
+ "componentId": {
533
+ "scope": "teambit.harmony",
534
+ "name": "harmony",
535
+ "version": "0.4.6"
536
+ }
537
+ },
538
+ "isOptional": false,
539
+ "defaultValue": "Aspect.create({\n id: 'teambit.defender/multi-tester',\n})"
540
+ }
541
+ ],
542
+ "internals": []
543
+ },
544
+ {
545
+ "__schema": "ModuleSchema",
546
+ "location": {
547
+ "filePath": "multi-tester.main.runtime.ts",
548
+ "line": 1,
549
+ "character": 1
550
+ },
551
+ "exports": [
552
+ {
553
+ "__schema": "ClassSchema",
554
+ "location": {
555
+ "filePath": "multi-tester.main.runtime.ts",
556
+ "line": 6,
557
+ "character": 1
558
+ },
559
+ "signature": "class MultiTesterMain",
560
+ "name": "MultiTesterMain",
561
+ "members": [
562
+ {
563
+ "__schema": "FunctionLikeSchema",
564
+ "location": {
565
+ "filePath": "multi-tester.main.runtime.ts",
566
+ "line": 11,
567
+ "character": 3
568
+ },
569
+ "doc": {
570
+ "__schema": "DocSchema",
571
+ "location": {
572
+ "filePath": "multi-tester.main.runtime.ts",
573
+ "line": 7,
574
+ "character": 3
575
+ },
576
+ "raw": "/**\n * create a multi-tester `Tester` instance.\n * @param testers list of testers to include.\n */",
577
+ "comment": "create a multi-tester `Tester` instance.",
578
+ "tags": [
579
+ {
580
+ "__schema": "PropertyLikeTagSchema",
581
+ "location": {
582
+ "filePath": "multi-tester.main.runtime.ts",
583
+ "line": 9,
584
+ "character": 6
585
+ },
586
+ "name": "testers",
587
+ "tagName": "parameter",
588
+ "comment": "list of testers to include."
589
+ }
590
+ ]
591
+ },
592
+ "signature": "(method) MultiTesterMain.createTester(testers: Tester[]): MultiTester",
593
+ "name": "createTester",
594
+ "params": [
595
+ {
596
+ "__schema": "ParameterSchema",
597
+ "location": {
598
+ "filePath": "multi-tester.main.runtime.ts",
599
+ "line": 11,
600
+ "character": 16
601
+ },
602
+ "name": "testers",
603
+ "type": {
604
+ "__schema": "TypeArraySchema",
605
+ "location": {
606
+ "filePath": "multi-tester.main.runtime.ts",
607
+ "line": 11,
608
+ "character": 25
609
+ },
610
+ "type": {
611
+ "__schema": "TypeRefSchema",
612
+ "location": {
613
+ "filePath": "multi-tester.main.runtime.ts",
614
+ "line": 11,
615
+ "character": 25
616
+ },
617
+ "name": "Tester",
618
+ "componentId": {
619
+ "scope": "teambit.defender",
620
+ "name": "tester"
621
+ }
622
+ }
623
+ },
624
+ "isOptional": false,
625
+ "isSpread": false
626
+ }
627
+ ],
628
+ "returnType": {
629
+ "__schema": "TypeRefSchema",
630
+ "location": {
631
+ "filePath": "multi-tester.main.runtime.ts",
632
+ "line": 11,
633
+ "character": 3
634
+ },
635
+ "name": "MultiTester"
636
+ },
637
+ "modifiers": []
638
+ },
639
+ {
640
+ "__schema": "VariableLikeSchema",
641
+ "location": {
642
+ "filePath": "multi-tester.main.runtime.ts",
643
+ "line": 15,
644
+ "character": 3
645
+ },
646
+ "signature": "(property) MultiTesterMain.runtime: RuntimeDefinition",
647
+ "name": "runtime",
648
+ "type": {
649
+ "__schema": "InferenceTypeSchema",
650
+ "location": {
651
+ "filePath": "multi-tester.main.runtime.ts",
652
+ "line": 15,
653
+ "character": 3
654
+ },
655
+ "type": "RuntimeDefinition"
656
+ },
657
+ "isOptional": true,
658
+ "defaultValue": "MainRuntime"
659
+ },
660
+ {
661
+ "__schema": "FunctionLikeSchema",
662
+ "location": {
663
+ "filePath": "multi-tester.main.runtime.ts",
664
+ "line": 17,
665
+ "character": 3
666
+ },
667
+ "signature": "(method) MultiTesterMain.provider(): Promise<MultiTesterMain>",
668
+ "name": "provider",
669
+ "params": [],
670
+ "returnType": {
671
+ "__schema": "InferenceTypeSchema",
672
+ "location": {
673
+ "filePath": "multi-tester.main.runtime.ts",
674
+ "line": 17,
675
+ "character": 3
676
+ },
677
+ "type": "Promise<MultiTesterMain>"
678
+ },
679
+ "modifiers": [
680
+ "static",
681
+ "async"
682
+ ]
683
+ }
684
+ ],
685
+ "extendsNodes": [],
686
+ "implementNodes": []
687
+ }
688
+ ],
689
+ "internals": [
690
+ {
691
+ "__schema": "UnImplementedSchema",
692
+ "location": {
693
+ "filePath": "multi-tester.main.runtime.ts",
694
+ "line": 22,
695
+ "character": 1
696
+ },
697
+ "name": "MultiTesterAspect.addRuntime(MultiTesterMain);",
698
+ "type": "ExpressionStatement"
699
+ }
700
+ ]
701
+ },
702
+ {
703
+ "__schema": "ModuleSchema",
704
+ "location": {
705
+ "filePath": "multi-tester.tester.ts",
706
+ "line": 1,
707
+ "character": 1
708
+ },
709
+ "exports": [
710
+ {
711
+ "__schema": "TypeSchema",
712
+ "location": {
713
+ "filePath": "multi-tester.tester.ts",
714
+ "line": 6,
715
+ "character": 1
716
+ },
717
+ "signature": "type MultiCompilerOptions = {\n targetExtension?: string | undefined;\n}",
718
+ "name": "MultiCompilerOptions",
719
+ "type": {
720
+ "__schema": "TypeLiteralSchema",
721
+ "location": {
722
+ "filePath": "multi-tester.tester.ts",
723
+ "line": 6,
724
+ "character": 36
725
+ },
726
+ "members": [
727
+ {
728
+ "__schema": "VariableLikeSchema",
729
+ "location": {
730
+ "filePath": "multi-tester.tester.ts",
731
+ "line": 7,
732
+ "character": 3
733
+ },
734
+ "signature": "(property) targetExtension?: string | undefined",
735
+ "name": "targetExtension",
736
+ "type": {
737
+ "__schema": "KeywordTypeSchema",
738
+ "location": {
739
+ "filePath": "multi-tester.tester.ts",
740
+ "line": 7,
741
+ "character": 21
742
+ },
743
+ "name": "string"
744
+ },
745
+ "isOptional": true
746
+ }
747
+ ]
748
+ }
749
+ },
750
+ {
751
+ "__schema": "ClassSchema",
752
+ "location": {
753
+ "filePath": "multi-tester.tester.ts",
754
+ "line": 10,
755
+ "character": 1
756
+ },
757
+ "signature": "class MultiTester",
758
+ "name": "MultiTester",
759
+ "members": [
760
+ {
761
+ "__schema": "VariableLikeSchema",
762
+ "location": {
763
+ "filePath": "multi-tester.tester.ts",
764
+ "line": 11,
765
+ "character": 3
766
+ },
767
+ "signature": "(property) MultiTester.displayName: string",
768
+ "name": "displayName",
769
+ "type": {
770
+ "__schema": "InferenceTypeSchema",
771
+ "location": {
772
+ "filePath": "multi-tester.tester.ts",
773
+ "line": 11,
774
+ "character": 3
775
+ },
776
+ "type": "string"
777
+ },
778
+ "isOptional": true,
779
+ "defaultValue": "'Multi tester'"
780
+ },
781
+ {
782
+ "__schema": "ConstructorSchema",
783
+ "location": {
784
+ "filePath": "multi-tester.tester.ts",
785
+ "line": 13,
786
+ "character": 3
787
+ },
788
+ "signature": "constructor MultiTester(id: string, testers: Tester[]): MultiTester",
789
+ "name": "constructor",
790
+ "params": [
791
+ {
792
+ "__schema": "ParameterSchema",
793
+ "location": {
794
+ "filePath": "multi-tester.tester.ts",
795
+ "line": 13,
796
+ "character": 15
797
+ },
798
+ "name": "id",
799
+ "type": {
800
+ "__schema": "KeywordTypeSchema",
801
+ "location": {
802
+ "filePath": "multi-tester.tester.ts",
803
+ "line": 13,
804
+ "character": 28
805
+ },
806
+ "name": "string"
807
+ },
808
+ "isOptional": false,
809
+ "isSpread": false
810
+ },
811
+ {
812
+ "__schema": "ParameterSchema",
813
+ "location": {
814
+ "filePath": "multi-tester.tester.ts",
815
+ "line": 13,
816
+ "character": 36
817
+ },
818
+ "name": "testers",
819
+ "type": {
820
+ "__schema": "TypeArraySchema",
821
+ "location": {
822
+ "filePath": "multi-tester.tester.ts",
823
+ "line": 13,
824
+ "character": 54
825
+ },
826
+ "type": {
827
+ "__schema": "TypeRefSchema",
828
+ "location": {
829
+ "filePath": "multi-tester.tester.ts",
830
+ "line": 13,
831
+ "character": 54
832
+ },
833
+ "name": "Tester",
834
+ "componentId": {
835
+ "scope": "teambit.defender",
836
+ "name": "tester"
837
+ }
838
+ }
839
+ },
840
+ "isOptional": false,
841
+ "isSpread": false
842
+ }
843
+ ],
844
+ "returnType": {
845
+ "__schema": "ThisTypeSchema",
846
+ "location": {
847
+ "filePath": "multi-tester.tester.ts",
848
+ "line": 10,
849
+ "character": 1
850
+ },
851
+ "name": "MultiTester"
852
+ },
853
+ "modifiers": []
854
+ },
855
+ {
856
+ "__schema": "FunctionLikeSchema",
857
+ "location": {
858
+ "filePath": "multi-tester.tester.ts",
859
+ "line": 15,
860
+ "character": 3
861
+ },
862
+ "signature": "(method) MultiTester.displayConfig(): string",
863
+ "name": "displayConfig",
864
+ "params": [],
865
+ "returnType": {
866
+ "__schema": "InferenceTypeSchema",
867
+ "location": {
868
+ "filePath": "multi-tester.tester.ts",
869
+ "line": 15,
870
+ "character": 3
871
+ },
872
+ "type": "string"
873
+ },
874
+ "modifiers": []
875
+ },
876
+ {
877
+ "__schema": "FunctionLikeSchema",
878
+ "location": {
879
+ "filePath": "multi-tester.tester.ts",
880
+ "line": 23,
881
+ "character": 3
882
+ },
883
+ "signature": "(method) MultiTester.test(context: TesterContext): Promise<Tests>",
884
+ "name": "test",
885
+ "params": [
886
+ {
887
+ "__schema": "ParameterSchema",
888
+ "location": {
889
+ "filePath": "multi-tester.tester.ts",
890
+ "line": 23,
891
+ "character": 14
892
+ },
893
+ "name": "context",
894
+ "type": {
895
+ "__schema": "TypeRefSchema",
896
+ "location": {
897
+ "filePath": "multi-tester.tester.ts",
898
+ "line": 23,
899
+ "character": 23
900
+ },
901
+ "name": "TesterContext",
902
+ "componentId": {
903
+ "scope": "teambit.defender",
904
+ "name": "tester"
905
+ }
906
+ },
907
+ "isOptional": false,
908
+ "isSpread": false
909
+ }
910
+ ],
911
+ "returnType": {
912
+ "__schema": "TypeRefSchema",
913
+ "location": {
914
+ "filePath": "multi-tester.tester.ts",
915
+ "line": 23,
916
+ "character": 39
917
+ },
918
+ "name": "Promise",
919
+ "typeArgs": [
920
+ {
921
+ "__schema": "TypeRefSchema",
922
+ "location": {
923
+ "filePath": "multi-tester.tester.ts",
924
+ "line": 23,
925
+ "character": 47
926
+ },
927
+ "name": "Tests",
928
+ "componentId": {
929
+ "scope": "teambit.defender",
930
+ "name": "tester"
931
+ }
932
+ }
933
+ ]
934
+ },
935
+ "modifiers": [
936
+ "async"
937
+ ]
938
+ },
939
+ {
940
+ "__schema": "FunctionLikeSchema",
941
+ "location": {
942
+ "filePath": "multi-tester.tester.ts",
943
+ "line": 32,
944
+ "character": 3
945
+ },
946
+ "signature": "(method) MultiTester.watch(context: TesterContext): Promise<Tests>",
947
+ "name": "watch",
948
+ "params": [
949
+ {
950
+ "__schema": "ParameterSchema",
951
+ "location": {
952
+ "filePath": "multi-tester.tester.ts",
953
+ "line": 32,
954
+ "character": 15
955
+ },
956
+ "name": "context",
957
+ "type": {
958
+ "__schema": "TypeRefSchema",
959
+ "location": {
960
+ "filePath": "multi-tester.tester.ts",
961
+ "line": 32,
962
+ "character": 24
963
+ },
964
+ "name": "TesterContext",
965
+ "componentId": {
966
+ "scope": "teambit.defender",
967
+ "name": "tester"
968
+ }
969
+ },
970
+ "isOptional": false,
971
+ "isSpread": false
972
+ }
973
+ ],
974
+ "returnType": {
975
+ "__schema": "TypeRefSchema",
976
+ "location": {
977
+ "filePath": "multi-tester.tester.ts",
978
+ "line": 32,
979
+ "character": 40
980
+ },
981
+ "name": "Promise",
982
+ "typeArgs": [
983
+ {
984
+ "__schema": "TypeRefSchema",
985
+ "location": {
986
+ "filePath": "multi-tester.tester.ts",
987
+ "line": 32,
988
+ "character": 48
989
+ },
990
+ "name": "Tests",
991
+ "componentId": {
992
+ "scope": "teambit.defender",
993
+ "name": "tester"
994
+ }
995
+ }
996
+ ]
997
+ },
998
+ "modifiers": [
999
+ "async"
1000
+ ]
1001
+ },
1002
+ {
1003
+ "__schema": "FunctionLikeSchema",
1004
+ "location": {
1005
+ "filePath": "multi-tester.tester.ts",
1006
+ "line": 43,
1007
+ "character": 3
1008
+ },
1009
+ "doc": {
1010
+ "__schema": "DocSchema",
1011
+ "location": {
1012
+ "filePath": "multi-tester.tester.ts",
1013
+ "line": 40,
1014
+ "character": 3
1015
+ },
1016
+ "raw": "/**\n * returns the version of all testers instance (e.g. '4.0.1').\n */",
1017
+ "comment": "returns the version of all testers instance (e.g. '4.0.1')."
1018
+ },
1019
+ "signature": "(method) MultiTester.version(): string",
1020
+ "name": "version",
1021
+ "params": [],
1022
+ "returnType": {
1023
+ "__schema": "KeywordTypeSchema",
1024
+ "location": {
1025
+ "filePath": "multi-tester.tester.ts",
1026
+ "line": 43,
1027
+ "character": 14
1028
+ },
1029
+ "name": "string"
1030
+ },
1031
+ "modifiers": []
1032
+ }
1033
+ ],
1034
+ "extendsNodes": [],
1035
+ "implementNodes": [
1036
+ {
1037
+ "__schema": "ExpressionWithTypeArgumentsSchema",
1038
+ "location": {
1039
+ "filePath": "multi-tester.tester.ts",
1040
+ "line": 10,
1041
+ "character": 37
1042
+ },
1043
+ "name": "implements Tester",
1044
+ "typeArgs": [],
1045
+ "expression": {
1046
+ "__schema": "TypeRefSchema",
1047
+ "location": {
1048
+ "filePath": "multi-tester.tester.ts",
1049
+ "line": 10,
1050
+ "character": 37
1051
+ },
1052
+ "name": "Tester",
1053
+ "componentId": {
1054
+ "_legacy": {
1055
+ "scope": "teambit.defender",
1056
+ "name": "multi-tester",
1057
+ "version": "1.0.189"
1058
+ },
1059
+ "_scope": "teambit.defender"
1060
+ }
1061
+ }
1062
+ }
1063
+ ]
1064
+ }
1065
+ ],
1066
+ "internals": []
1067
+ }
1068
+ ],
1069
+ "componentId": {
1070
+ "scope": "teambit.defender",
1071
+ "name": "multi-tester",
1072
+ "version": "1.0.189"
1073
+ },
1074
+ "taggedModuleExports": []
1075
+ }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["_multiTester","data","require","_default","exports","default","MultiTesterAspect"],"sources":["index.ts"],"sourcesContent":["import { MultiTesterAspect } from './multi-tester.aspect';\n\nexport { MultiTesterAspect };\nexport type { MultiTesterMain } from './multi-tester.main.runtime';\nexport type { MultiTester } from './multi-tester.tester';\nexport default MultiTesterAspect;\n"],"mappings":";;;;;;;;;;;;AAAA,SAAAA,aAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,YAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0D,IAAAE,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAK3CC,gCAAiB"}
1
+ {"version":3,"names":["_multiTester","data","require","_default","exports","default","MultiTesterAspect"],"sources":["index.ts"],"sourcesContent":["import { MultiTesterAspect } from './multi-tester.aspect';\n\nexport { MultiTesterAspect };\nexport type { MultiTesterMain } from './multi-tester.main.runtime';\nexport type { MultiTester } from './multi-tester.tester';\nexport default MultiTesterAspect;\n"],"mappings":";;;;;;;;;;;;AAAA,SAAAA,aAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,YAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0D,IAAAE,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAK3CC,gCAAiB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_harmony","data","require","MultiTesterAspect","exports","Aspect","create","id"],"sources":["multi-tester.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const MultiTesterAspect = Aspect.create({\n id: 'teambit.defender/multi-tester',\n});\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAGE,iBAAM,CAACC,MAAM,CAAC;EAC7CC,EAAE,EAAE;AACN,CAAC,CAAC"}
1
+ {"version":3,"names":["_harmony","data","require","MultiTesterAspect","exports","Aspect","create","id"],"sources":["multi-tester.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const MultiTesterAspect = Aspect.create({\n id: 'teambit.defender/multi-tester',\n});\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAGE,iBAAM,CAACC,MAAM,CAAC;EAC7CC,EAAE,EAAE;AACN,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireDefault","require","obj","__esModule","default","Logo","createElement","style","height","display","justifyContent","width","src","exports"],"sources":["multi-tester.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/tester.svg\" />\n </div>\n);\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAC,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEnB,MAAMG,IAAI,GAAGA,CAAA,kBAClBP,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxEZ,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEI,KAAK,EAAE;EAAG,CAAE;EAACC,GAAG,EAAC;AAAoD,CAAE,CAClF,CACN;AAACC,OAAA,CAAAR,IAAA,GAAAA,IAAA"}
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","obj","__esModule","default","Logo","createElement","style","height","display","justifyContent","width","src","exports"],"sources":["multi-tester.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/tester.svg\" />\n </div>\n);\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAC,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEnB,MAAMG,IAAI,GAAGA,CAAA,kBAClBP,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxEZ,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEI,KAAK,EAAE;EAAG,CAAE;EAACC,GAAG,EAAC;AAAoD,CAAE,CAClF,CACN;AAACC,OAAA,CAAAR,IAAA,GAAAA,IAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_multiTester","_multiTester2","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","MultiTesterMain","createTester","testers","MultiTester","MultiTesterAspect","id","provider","exports","MainRuntime","addRuntime"],"sources":["multi-tester.main.runtime.ts"],"sourcesContent":["import { MainRuntime } from '@teambit/cli';\nimport { Tester } from '@teambit/tester';\nimport { MultiTesterAspect } from './multi-tester.aspect';\nimport { MultiTester } from './multi-tester.tester';\n\nexport class MultiTesterMain {\n /**\n * create a multi-tester `Tester` instance.\n * @param testers list of testers to include.\n */\n createTester(testers: Tester[]) {\n return new MultiTester(MultiTesterAspect.id, testers);\n }\n\n static runtime = MainRuntime;\n\n static async provider() {\n return new MultiTesterMain();\n }\n}\n\nMultiTesterAspect.addRuntime(MultiTesterMain);\n"],"mappings":";;;;;;AAAA,SAAAA,KAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,IAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAE,aAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,YAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,cAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,aAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAoD,SAAAI,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,CAAA,QAAAC,CAAA,GAAAC,YAAA,CAAAF,CAAA,uCAAAC,CAAA,GAAAA,CAAA,GAAAE,MAAA,CAAAF,CAAA;AAAA,SAAAC,aAAAF,CAAA,EAAAI,CAAA,2BAAAJ,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAK,CAAA,GAAAL,CAAA,CAAAM,MAAA,CAAAC,WAAA,kBAAAF,CAAA,QAAAJ,CAAA,GAAAI,CAAA,CAAAG,IAAA,CAAAR,CAAA,EAAAI,CAAA,uCAAAH,CAAA,SAAAA,CAAA,YAAAQ,SAAA,yEAAAL,CAAA,GAAAD,MAAA,GAAAO,MAAA,EAAAV,CAAA;AAE7C,MAAMW,eAAe,CAAC;EAC3B;AACF;AACA;AACA;EACEC,YAAYA,CAACC,OAAiB,EAAE;IAC9B,OAAO,KAAIC,2BAAW,EAACC,gCAAiB,CAACC,EAAE,EAAEH,OAAO,CAAC;EACvD;EAIA,aAAaI,QAAQA,CAAA,EAAG;IACtB,OAAO,IAAIN,eAAe,CAAC,CAAC;EAC9B;AACF;AAACO,OAAA,CAAAP,eAAA,GAAAA,eAAA;AAAArB,eAAA,CAdYqB,eAAe,aASTQ,kBAAW;AAO9BJ,gCAAiB,CAACK,UAAU,CAACT,eAAe,CAAC"}
1
+ {"version":3,"names":["_cli","data","require","_multiTester","_multiTester2","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","MultiTesterMain","createTester","testers","MultiTester","MultiTesterAspect","id","provider","exports","MainRuntime","addRuntime"],"sources":["multi-tester.main.runtime.ts"],"sourcesContent":["import { MainRuntime } from '@teambit/cli';\nimport { Tester } from '@teambit/tester';\nimport { MultiTesterAspect } from './multi-tester.aspect';\nimport { MultiTester } from './multi-tester.tester';\n\nexport class MultiTesterMain {\n /**\n * create a multi-tester `Tester` instance.\n * @param testers list of testers to include.\n */\n createTester(testers: Tester[]) {\n return new MultiTester(MultiTesterAspect.id, testers);\n }\n\n static runtime = MainRuntime;\n\n static async provider() {\n return new MultiTesterMain();\n }\n}\n\nMultiTesterAspect.addRuntime(MultiTesterMain);\n"],"mappings":";;;;;;AAAA,SAAAA,KAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,IAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAE,aAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,YAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,cAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,aAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAoD,SAAAI,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,CAAA,QAAAC,CAAA,GAAAC,YAAA,CAAAF,CAAA,uCAAAC,CAAA,GAAAA,CAAA,GAAAE,MAAA,CAAAF,CAAA;AAAA,SAAAC,aAAAF,CAAA,EAAAI,CAAA,2BAAAJ,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAK,CAAA,GAAAL,CAAA,CAAAM,MAAA,CAAAC,WAAA,kBAAAF,CAAA,QAAAJ,CAAA,GAAAI,CAAA,CAAAG,IAAA,CAAAR,CAAA,EAAAI,CAAA,uCAAAH,CAAA,SAAAA,CAAA,YAAAQ,SAAA,yEAAAL,CAAA,GAAAD,MAAA,GAAAO,MAAA,EAAAV,CAAA;AAE7C,MAAMW,eAAe,CAAC;EAC3B;AACF;AACA;AACA;EACEC,YAAYA,CAACC,OAAiB,EAAE;IAC9B,OAAO,KAAIC,2BAAW,EAACC,gCAAiB,CAACC,EAAE,EAAEH,OAAO,CAAC;EACvD;EAIA,aAAaI,QAAQA,CAAA,EAAG;IACtB,OAAO,IAAIN,eAAe,CAAC,CAAC;EAC9B;AACF;AAACO,OAAA,CAAAP,eAAA,GAAAA,eAAA;AAAArB,eAAA,CAdYqB,eAAe,aASTQ,kBAAW;AAO9BJ,gCAAiB,CAACK,UAAU,CAACT,eAAe,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_tester","_testsResults","_lodash","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","MultiTester","constructor","id","testers","displayConfig","map","tester","displayName","join","test","context","allResults","pMapSeries","merged","mergeTests","watch","version","tests","componentResultsMap","Map","compact","forEach","currentTests","components","currentComponentResults","currIdStr","componentId","toString","foundComponent","get","set","mergeComponentResults","Tests","Array","from","values","results1","results2","start","results","mergedTestsResults","TestsResult","testFiles","success","errors","loading","exports"],"sources":["multi-tester.tester.ts"],"sourcesContent":["import pMapSeries from 'p-map-series';\nimport { Tester, TesterContext, Tests, ComponentsResults } from '@teambit/tester';\nimport { TestsResult } from '@teambit/tests-results';\nimport { compact } from 'lodash';\n\nexport type MultiCompilerOptions = {\n targetExtension?: string;\n};\n\nexport class MultiTester implements Tester {\n displayName = 'Multi tester';\n\n constructor(readonly id: string, readonly testers: Tester[]) {}\n\n displayConfig() {\n return this.testers\n .map((tester) => {\n return `${tester.displayName}\\n${tester.displayConfig}\\n`;\n })\n .join('\\n');\n }\n\n async test(context: TesterContext): Promise<Tests> {\n const allResults = await pMapSeries(this.testers, (tester) => {\n return tester.test(context);\n });\n const merged = this.mergeTests(allResults);\n return merged;\n }\n\n // TODO: not working properly yet\n async watch(context: TesterContext): Promise<Tests> {\n const allResults = await pMapSeries(this.testers, (tester) => {\n return tester.watch ? tester.watch(context) : tester.test(context);\n });\n const merged = this.mergeTests(allResults);\n return merged;\n }\n\n /**\n * returns the version of all testers instance (e.g. '4.0.1').\n */\n version(): string {\n return this.testers\n .map((tester) => {\n return `${tester.displayName}@${tester.version()}`;\n })\n .join('\\n');\n }\n\n private mergeTests(tests: Tests[]): Tests {\n const componentResultsMap = new Map<string, ComponentsResults>();\n\n compact(tests).forEach((currentTests) => {\n currentTests.components.forEach((currentComponentResults) => {\n const currIdStr = currentComponentResults.componentId.toString();\n const foundComponent = componentResultsMap.get(currIdStr);\n if (foundComponent) {\n componentResultsMap.set(currIdStr, this.mergeComponentResults(foundComponent, currentComponentResults));\n } else {\n componentResultsMap.set(currIdStr, currentComponentResults);\n }\n });\n });\n\n return new Tests(Array.from(componentResultsMap.values()));\n }\n\n private mergeComponentResults(results1: ComponentsResults, results2: ComponentsResults): ComponentsResults {\n const merged: ComponentsResults = {\n componentId: results1.componentId,\n };\n let start;\n if (!results1.results?.start) {\n start = results2.results?.start;\n } else if (!results2.results?.start) {\n start = results1.results?.start;\n } else {\n // Take sooner start\n start = results1.results?.start < results2.results?.start ? results1.results?.start : results2.results?.start;\n }\n const mergedTestsResults: TestsResult = new TestsResult(\n [...(results1.results?.testFiles || []), ...(results2.results?.testFiles || [])],\n results1.results?.success && results2.results?.success,\n start\n );\n merged.results = mergedTestsResults;\n merged.errors = [...(results1.errors || []), ...(results2.errors || [])];\n merged.loading = results1.loading || results2.loading;\n return merged;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_tester","_testsResults","_lodash","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","MultiTester","constructor","id","testers","displayConfig","map","tester","displayName","join","test","context","allResults","pMapSeries","merged","mergeTests","watch","version","tests","componentResultsMap","Map","compact","forEach","currentTests","components","currentComponentResults","currIdStr","componentId","toString","foundComponent","get","set","mergeComponentResults","Tests","Array","from","values","results1","results2","start","results","mergedTestsResults","TestsResult","testFiles","success","errors","loading","exports"],"sources":["multi-tester.tester.ts"],"sourcesContent":["import pMapSeries from 'p-map-series';\nimport { Tester, TesterContext, Tests, ComponentsResults } from '@teambit/tester';\nimport { TestsResult } from '@teambit/tests-results';\nimport { compact } from 'lodash';\n\nexport type MultiCompilerOptions = {\n targetExtension?: string;\n};\n\nexport class MultiTester implements Tester {\n displayName = 'Multi tester';\n\n constructor(readonly id: string, readonly testers: Tester[]) {}\n\n displayConfig() {\n return this.testers\n .map((tester) => {\n return `${tester.displayName}\\n${tester.displayConfig}\\n`;\n })\n .join('\\n');\n }\n\n async test(context: TesterContext): Promise<Tests> {\n const allResults = await pMapSeries(this.testers, (tester) => {\n return tester.test(context);\n });\n const merged = this.mergeTests(allResults);\n return merged;\n }\n\n // TODO: not working properly yet\n async watch(context: TesterContext): Promise<Tests> {\n const allResults = await pMapSeries(this.testers, (tester) => {\n return tester.watch ? tester.watch(context) : tester.test(context);\n });\n const merged = this.mergeTests(allResults);\n return merged;\n }\n\n /**\n * returns the version of all testers instance (e.g. '4.0.1').\n */\n version(): string {\n return this.testers\n .map((tester) => {\n return `${tester.displayName}@${tester.version()}`;\n })\n .join('\\n');\n }\n\n private mergeTests(tests: Tests[]): Tests {\n const componentResultsMap = new Map<string, ComponentsResults>();\n\n compact(tests).forEach((currentTests) => {\n currentTests.components.forEach((currentComponentResults) => {\n const currIdStr = currentComponentResults.componentId.toString();\n const foundComponent = componentResultsMap.get(currIdStr);\n if (foundComponent) {\n componentResultsMap.set(currIdStr, this.mergeComponentResults(foundComponent, currentComponentResults));\n } else {\n componentResultsMap.set(currIdStr, currentComponentResults);\n }\n });\n });\n\n return new Tests(Array.from(componentResultsMap.values()));\n }\n\n private mergeComponentResults(results1: ComponentsResults, results2: ComponentsResults): ComponentsResults {\n const merged: ComponentsResults = {\n componentId: results1.componentId,\n };\n let start;\n if (!results1.results?.start) {\n start = results2.results?.start;\n } else if (!results2.results?.start) {\n start = results1.results?.start;\n } else {\n // Take sooner start\n start = results1.results?.start < results2.results?.start ? results1.results?.start : results2.results?.start;\n }\n const mergedTestsResults: TestsResult = new TestsResult(\n [...(results1.results?.testFiles || []), ...(results2.results?.testFiles || [])],\n results1.results?.success && results2.results?.success,\n start\n );\n merged.results = mergedTestsResults;\n merged.errors = [...(results1.errors || []), ...(results2.errors || [])];\n merged.loading = results1.loading || results2.loading;\n return merged;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import * as compositions_0 from '/Users/giladshoham/Library/Caches/Bit/capsules/root/b5ea46ec36fa42b9dbedfc12ecb7bb63e03fcfe6/teambit.defender_multi-tester@1.0.189/dist/multi-tester.composition.js';
2
+ import * as overview_0 from '/Users/giladshoham/Library/Caches/Bit/capsules/root/b5ea46ec36fa42b9dbedfc12ecb7bb63e03fcfe6/teambit.defender_multi-tester@1.0.189/dist/multi-tester.docs.mdx';
3
+
4
+ export const compositions = [compositions_0];
5
+ export const overview = [overview_0];
6
+
7
+ export const compositions_metadata = {"compositions":[{"displayName":"Logo","identifier":"Logo"}]};
package/package.json CHANGED
@@ -1,27 +1,27 @@
1
1
  {
2
2
  "name": "@teambit/multi-tester",
3
- "version": "1.0.188",
3
+ "version": "1.0.189",
4
4
  "homepage": "https://bit.cloud/teambit/defender/multi-tester",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.defender",
8
8
  "name": "multi-tester",
9
- "version": "1.0.188"
9
+ "version": "1.0.189"
10
10
  },
11
11
  "dependencies": {
12
12
  "lodash": "4.17.21",
13
13
  "p-map-series": "2.1.0",
14
14
  "@teambit/harmony": "0.4.6",
15
15
  "@teambit/tests-results": "1.0.4",
16
- "@teambit/cli": "0.0.855",
17
- "@teambit/tester": "1.0.188"
16
+ "@teambit/cli": "0.0.856",
17
+ "@teambit/tester": "1.0.189"
18
18
  },
19
19
  "devDependencies": {
20
20
  "@types/lodash": "4.14.165",
21
21
  "@types/mocha": "9.1.0",
22
22
  "chai": "4.3.0",
23
23
  "@teambit/defender.content.tester-overview": "1.95.0",
24
- "@teambit/harmony.envs.core-aspect-env": "0.0.25"
24
+ "@teambit/harmony.envs.core-aspect-env": "0.0.27"
25
25
  },
26
26
  "peerDependencies": {
27
27
  "react": "^17.0.0 || ^18.0.0",
@@ -1,7 +0,0 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.defender_multi-tester@1.0.188/dist/multi-tester.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.defender_multi-tester@1.0.188/dist/multi-tester.docs.mdx';
3
-
4
- export const compositions = [compositions_0];
5
- export const overview = [overview_0];
6
-
7
- export const compositions_metadata = {"compositions":[{"displayName":"Logo","identifier":"Logo"}]};