@memberjunction/react-test-harness 2.88.0 → 2.90.0

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.
@@ -31,14 +31,23 @@ class ComponentRunner {
31
31
  const criticalWarnings = [];
32
32
  const consoleLogs = [];
33
33
  let renderCount = 0;
34
+ // Default debug to true
35
+ const debug = options.debug !== false;
36
+ if (debug) {
37
+ console.log('\nšŸ” === Component Execution Debug Mode ===');
38
+ console.log('Component:', options.componentSpec.name);
39
+ console.log('Props:', JSON.stringify(options.props || {}, null, 2));
40
+ }
34
41
  try {
35
42
  const page = await this.browserManager.getPage();
36
- // Set up monitoring
43
+ // Clear the page before each test for isolation
44
+ await page.goto('about:blank');
45
+ // Expose MJ utilities to the page
46
+ await this.exposeMJUtilities(page, options.contextUser);
47
+ // Then set up monitoring
37
48
  this.setupConsoleLogging(page, consoleLogs, warnings, criticalWarnings);
38
49
  this.setupErrorHandling(page, errors);
39
50
  await this.injectRenderTracking(page);
40
- // Expose MJ utilities to the page
41
- await this.exposeMJUtilities(page, options.contextUser);
42
51
  // Create and load the component
43
52
  const htmlContent = this.createHTMLTemplate(options);
44
53
  await page.goto(`data:text/html;charset=utf-8,${encodeURIComponent(htmlContent)}`);
@@ -49,18 +58,23 @@ class ComponentRunner {
49
58
  // Collect runtime errors
50
59
  const runtimeErrors = await this.collectRuntimeErrors(page);
51
60
  errors.push(...runtimeErrors);
61
+ // Capture async errors only if wait time is specified
62
+ if (options.asyncErrorWaitTime && options.asyncErrorWaitTime > 0) {
63
+ const asyncErrors = await this.captureAsyncErrors(page, options.asyncErrorWaitTime);
64
+ errors.push(...asyncErrors);
65
+ }
52
66
  // Perform deep render validation
53
67
  const deepRenderErrors = await this.validateDeepRender(page);
54
68
  errors.push(...deepRenderErrors);
55
69
  // Get the rendered HTML
56
- const html = await this.browserManager.getContent();
70
+ const html = await page.content();
57
71
  // Take screenshot if needed
58
- const screenshot = await this.browserManager.screenshot();
72
+ const screenshot = await page.screenshot();
59
73
  // Determine success and collect any additional errors
60
74
  const { success, additionalErrors } = this.determineSuccess(errors, criticalWarnings, renderCount, !renderSuccess);
61
75
  // Add any additional errors
62
76
  errors.push(...additionalErrors);
63
- return {
77
+ const result = {
64
78
  success,
65
79
  html,
66
80
  errors: errors.map(e => {
@@ -81,10 +95,14 @@ class ComponentRunner {
81
95
  executionTime: Date.now() - startTime,
82
96
  renderCount
83
97
  };
98
+ if (debug) {
99
+ this.dumpDebugInfo(result);
100
+ }
101
+ return result;
84
102
  }
85
103
  catch (error) {
86
104
  errors.push(error instanceof Error ? error.message : String(error));
87
- return {
105
+ const result = {
88
106
  success: false,
89
107
  html: '',
90
108
  errors: errors.map(e => {
@@ -104,8 +122,56 @@ class ComponentRunner {
104
122
  executionTime: Date.now() - startTime,
105
123
  renderCount
106
124
  };
125
+ if (debug) {
126
+ console.log('\nāŒ Component execution failed with error:', error);
127
+ this.dumpDebugInfo(result);
128
+ }
129
+ return result;
107
130
  }
108
131
  }
132
+ /**
133
+ * Dumps debug information to console for easier troubleshooting
134
+ */
135
+ dumpDebugInfo(result) {
136
+ console.log('\nšŸ“Š === Component Execution Results ===');
137
+ console.log('Success:', result.success ? 'āœ…' : 'āŒ');
138
+ console.log('Execution time:', result.executionTime + 'ms');
139
+ console.log('Render count:', result.renderCount);
140
+ if (result.console && result.console.length > 0) {
141
+ console.log('\nšŸ“ Console Output:');
142
+ result.console.forEach(log => {
143
+ const icon = log.type === 'error' ? 'āŒ' :
144
+ log.type === 'warning' ? 'āš ļø' :
145
+ log.type === 'log' ? 'šŸ“' : 'šŸ’¬';
146
+ console.log(` ${icon} [${log.type}] ${log.text}`);
147
+ });
148
+ }
149
+ if (result.errors && result.errors.length > 0) {
150
+ console.log('\nāŒ Errors:', result.errors.length);
151
+ result.errors.forEach((err, i) => {
152
+ const message = typeof err === 'string' ? err : err.message;
153
+ console.log(` ${i + 1}. ${message}`);
154
+ });
155
+ }
156
+ if (result.warnings && result.warnings.length > 0) {
157
+ console.log('\nāš ļø Warnings:', result.warnings.length);
158
+ result.warnings.forEach((warn, i) => {
159
+ const message = typeof warn === 'string' ? warn : warn.message;
160
+ console.log(` ${i + 1}. ${message}`);
161
+ });
162
+ }
163
+ if (result.criticalWarnings && result.criticalWarnings.length > 0) {
164
+ console.log('\nšŸ”“ Critical Warnings:', result.criticalWarnings.length);
165
+ result.criticalWarnings.forEach((warn, i) => {
166
+ console.log(` ${i + 1}. ${warn}`);
167
+ });
168
+ }
169
+ if (result.html) {
170
+ const htmlPreview = result.html.substring(0, 200);
171
+ console.log('\nšŸ“„ HTML Preview:', htmlPreview + (result.html.length > 200 ? '...' : ''));
172
+ }
173
+ console.log('\n========================================\n');
174
+ }
109
175
  createHTMLTemplate(options) {
110
176
  const propsJson = JSON.stringify(options.props || {});
111
177
  const specJson = JSON.stringify(options.componentSpec);
@@ -143,12 +209,43 @@ ${runtimeScripts}
143
209
  ${componentScripts}
144
210
  ${cssLinks}
145
211
  <style>
146
- body { margin: 0; padding: 20px; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; }
147
- #root { min-height: 100vh; }
212
+ body {
213
+ margin: 0;
214
+ padding: 20px;
215
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
216
+ background-color: #f0f0f0; /* Light gray background to see contrast */
217
+ }
218
+ #root {
219
+ min-height: 100vh;
220
+ background-color: white;
221
+ border: 2px solid #007bff;
222
+ padding: 20px;
223
+ box-shadow: 0 0 10px rgba(0,0,0,0.1);
224
+ }
225
+ .test-harness-header {
226
+ background-color: #28a745;
227
+ color: white;
228
+ padding: 10px;
229
+ margin-bottom: 20px;
230
+ border-radius: 5px;
231
+ font-weight: bold;
232
+ text-align: center;
233
+ }
148
234
  </style>
149
235
  <script>
150
- // Initialize error tracking
236
+ // Initialize error and console tracking
151
237
  window.__testHarnessRuntimeErrors = [];
238
+ window.__testHarnessConsoleLogs = [];
239
+
240
+ // Track console output for async error detection
241
+ const originalConsoleError = console.error;
242
+ console.error = function(...args) {
243
+ window.__testHarnessConsoleLogs.push({
244
+ type: 'error',
245
+ text: args.map(arg => typeof arg === 'object' ? JSON.stringify(arg) : String(arg)).join(' ')
246
+ });
247
+ originalConsoleError.apply(console, args);
248
+ };
152
249
 
153
250
  // Global error handler
154
251
  window.addEventListener('error', (event) => {
@@ -160,6 +257,18 @@ ${cssLinks}
160
257
  });
161
258
  });
162
259
 
260
+ // Unhandled promise rejection handler
261
+ window.addEventListener('unhandledrejection', (event) => {
262
+ console.error('Unhandled promise rejection:', event.reason);
263
+ window.__testHarnessRuntimeErrors.push({
264
+ message: 'Unhandled Promise Rejection: ' + (event.reason?.message || event.reason || 'Unknown reason'),
265
+ stack: event.reason?.stack || 'No stack trace available',
266
+ type: 'promise-rejection'
267
+ });
268
+ // Prevent the default handling (which would log to console)
269
+ event.preventDefault();
270
+ });
271
+
163
272
  // Render tracking injection
164
273
  (function() {
165
274
  let renderCounter = 0;
@@ -192,8 +301,17 @@ ${cssLinks}
192
301
  </script>
193
302
  </head>
194
303
  <body>
195
- <div id="root"></div>
304
+ <div class="test-harness-header">
305
+ 🧪 React Test Harness - Component Loaded Successfully
306
+ </div>
307
+ <div id="root" data-testid="react-root">
308
+ <!-- Component will render here -->
309
+ </div>
196
310
  <script type="text/babel">
311
+ // Immediate debug message
312
+ console.log('šŸš€ Test harness script started executing');
313
+ document.getElementById('root').innerHTML = '<div style="background: lime; padding: 20px; color: black; font-size: 18px;">šŸ“ Script is running...</div>';
314
+
197
315
  ${options.setupCode || ''}
198
316
 
199
317
  // Create runtime context with dynamic libraries
@@ -466,11 +584,40 @@ ${cssLinks}
466
584
  const props = ${propsJson};
467
585
 
468
586
  (async () => {
587
+ console.log('šŸ“¦ Starting component initialization...');
588
+ console.log('React available:', typeof React !== 'undefined');
589
+ console.log('ReactDOM available:', typeof ReactDOM !== 'undefined');
590
+ console.log('Babel available:', typeof Babel !== 'undefined');
591
+
592
+ // Update the root to show progress
593
+ document.getElementById('root').innerHTML = '<div style="background: cyan; padding: 20px; color: black;">šŸ”„ Initializing components...</div>';
594
+
595
+ // First, test that React is working with a simple component
596
+ const TestComponent = () => React.createElement('div', {
597
+ style: {
598
+ background: 'yellow',
599
+ padding: '10px',
600
+ margin: '10px 0',
601
+ border: '2px solid orange',
602
+ color: 'black',
603
+ fontSize: '16px',
604
+ fontWeight: 'bold'
605
+ }
606
+ }, 'šŸ”§ React is working! Now loading your component...');
607
+
608
+ const testRoot = ReactDOM.createRoot(document.getElementById('root'));
609
+ testRoot.render(React.createElement(TestComponent));
610
+
611
+ // Wait a moment to show the test component
612
+ await new Promise(resolve => setTimeout(resolve, 500));
613
+
614
+ // Now proceed with the actual component
469
615
  // Register the component hierarchy
470
616
  const result = await hierarchyRegistrar.registerHierarchy(componentSpec);
471
617
 
472
618
  if (!result.success) {
473
619
  console.error('Failed to register components:', result.errors);
620
+ document.getElementById('root').innerHTML = '<div style="color: red; padding: 20px;">Failed to register components: ' + JSON.stringify(result.errors) + '</div>';
474
621
  return;
475
622
  }
476
623
 
@@ -493,6 +640,10 @@ ${cssLinks}
493
640
 
494
641
  // Function to render with current settings
495
642
  const renderWithSettings = () => {
643
+ console.log('šŸŽÆ Starting component render...');
644
+ console.log('Props:', props);
645
+ console.log('Root component found:', !!RootComponent);
646
+
496
647
  const enhancedProps = {
497
648
  ...props,
498
649
  components: components,
@@ -508,15 +659,60 @@ ${cssLinks}
508
659
  }
509
660
  };
510
661
 
511
- root.render(
512
- React.createElement(ErrorBoundary, null,
513
- React.createElement(RootComponent, enhancedProps)
514
- )
515
- );
662
+ console.log('Enhanced props created:', Object.keys(enhancedProps));
663
+
664
+ try {
665
+ root.render(
666
+ React.createElement(ErrorBoundary, null,
667
+ React.createElement(RootComponent, enhancedProps)
668
+ )
669
+ );
670
+ console.log('āœ… Component rendered successfully');
671
+ } catch (error) {
672
+ console.error('āŒ Render error:', error);
673
+ document.getElementById('root').innerHTML = '<div style="color: red; padding: 20px;">Render Error: ' + error.message + '</div>';
674
+ }
516
675
  };
517
676
 
518
677
  // Initial render
519
678
  renderWithSettings();
679
+
680
+ // Add a fallback message if nothing renders after a delay
681
+ setTimeout(() => {
682
+ const rootElement = document.getElementById('root');
683
+ if (rootElement) {
684
+ const hasContent = rootElement.innerHTML.trim().length > 0;
685
+ const hasVisibleChildren = rootElement.querySelector('*');
686
+
687
+ console.log('Root element check:', {
688
+ hasContent,
689
+ innerHTML: rootElement.innerHTML.substring(0, 100),
690
+ hasVisibleChildren: !!hasVisibleChildren,
691
+ childCount: rootElement.childNodes.length
692
+ });
693
+
694
+ if (!hasContent || !hasVisibleChildren) {
695
+ rootElement.innerHTML = '<div style="color: red; font-size: 18px; padding: 20px; border: 2px dashed red; background: #ffe6e6;">āš ļø Component did not render any visible content</div>';
696
+ } else {
697
+ // Force visibility on all children as a test
698
+ const allElements = rootElement.querySelectorAll('*');
699
+ allElements.forEach(el => {
700
+ if (el instanceof HTMLElement) {
701
+ // Make sure elements are visible
702
+ if (window.getComputedStyle(el).display === 'none') {
703
+ el.style.display = 'block !important';
704
+ }
705
+ if (window.getComputedStyle(el).visibility === 'hidden') {
706
+ el.style.visibility = 'visible !important';
707
+ }
708
+ // Add a test border to see if elements exist
709
+ el.style.border = '1px dotted red';
710
+ }
711
+ });
712
+ console.log('Applied debug borders to', allElements.length, 'elements');
713
+ }
714
+ }
715
+ }, 2000);
520
716
  })();
521
717
  </script>
522
718
  </body>
@@ -571,13 +767,13 @@ ${cssLinks}
571
767
  */
572
768
  async waitForRender(page, options, errors) {
573
769
  const timeout = options.timeout || 10000; // 10 seconds default
574
- const renderWaitTime = options.renderWaitTime || 1000; // Default 1000ms
770
+ const renderWaitTime = options.renderWaitTime || 500; // Default 500ms for render completion
575
771
  try {
576
772
  if (options.waitForSelector) {
577
- await this.browserManager.waitForSelector(options.waitForSelector, { timeout });
773
+ await page.waitForSelector(options.waitForSelector, { timeout });
578
774
  }
579
775
  if (options.waitForLoadState) {
580
- await this.browserManager.waitForLoadState(options.waitForLoadState);
776
+ await page.waitForLoadState(options.waitForLoadState);
581
777
  }
582
778
  else {
583
779
  // Wait for React to finish rendering with configurable time
@@ -625,6 +821,50 @@ ${cssLinks}
625
821
  });
626
822
  return errors;
627
823
  }
824
+ /**
825
+ * Captures async errors by waiting for asynchronous operations to complete
826
+ * This catches errors from setTimeout, setInterval, Promises, and async effects
827
+ */
828
+ async captureAsyncErrors(page, waitTime) {
829
+ const errors = [];
830
+ try {
831
+ // Clear any existing errors to track only new ones
832
+ const initialErrorCount = await page.evaluate(() => {
833
+ return window.__testHarnessRuntimeErrors?.length || 0;
834
+ });
835
+ // Wait for async operations to potentially fail
836
+ await page.waitForTimeout(waitTime);
837
+ // Collect any new errors that occurred during the wait
838
+ const allErrors = await page.evaluate(() => {
839
+ return window.__testHarnessRuntimeErrors || [];
840
+ });
841
+ // Process only new errors
842
+ const newErrors = allErrors.slice(initialErrorCount);
843
+ newErrors.forEach((error) => {
844
+ if (error.type === 'promise-rejection') {
845
+ errors.push(`Async operation failed: ${error.message}`);
846
+ }
847
+ else if (error.message && !errors.includes(`${error.type} error: ${error.message}`)) {
848
+ errors.push(`Delayed ${error.type} error: ${error.message}`);
849
+ }
850
+ });
851
+ // Also check if any console errors appeared
852
+ const consoleErrors = await page.evaluate(() => {
853
+ const logs = window.__testHarnessConsoleLogs || [];
854
+ return logs.filter((log) => log.type === 'error').map((log) => log.text);
855
+ });
856
+ // Add unique console errors
857
+ consoleErrors.forEach((error) => {
858
+ if (!errors.some(e => e.includes(error))) {
859
+ errors.push(`Console error during async wait: ${error}`);
860
+ }
861
+ });
862
+ }
863
+ catch (e) {
864
+ errors.push(`Failed to capture async errors: ${e}`);
865
+ }
866
+ return errors;
867
+ }
628
868
  /**
629
869
  * Performs deep render validation to catch errors that might be in the DOM
630
870
  */
@@ -687,67 +927,77 @@ ${cssLinks}
687
927
  * Expose MemberJunction utilities to the browser context
688
928
  */
689
929
  async exposeMJUtilities(page, contextUser) {
690
- // Check if utilities are already exposed
930
+ // Check if utilities are already exposed (they persist across navigations)
691
931
  const alreadyExposed = await page.evaluate(() => {
692
932
  return typeof window.__mjGetEntityObject === 'function';
693
933
  });
694
934
  if (alreadyExposed) {
695
935
  return; // Already exposed, skip
696
936
  }
697
- // Create instances in Node.js context
698
- const metadata = new core_1.Metadata();
699
- const runView = new core_1.RunView();
700
- const runQuery = new core_1.RunQuery();
701
- // Expose individual functions since we can't pass complex objects
702
- await page.exposeFunction('__mjGetEntityObject', async (entityName) => {
703
- try {
704
- const entity = await metadata.GetEntityObject(entityName, contextUser);
705
- return entity;
706
- }
707
- catch (error) {
708
- console.error('Error in __mjGetEntityObject:', error);
709
- return null;
710
- }
711
- });
712
- await page.exposeFunction('__mjGetEntities', () => {
713
- try {
714
- return metadata.Entities;
715
- }
716
- catch (error) {
717
- console.error('Error in __mjGetEntities:', error);
718
- return null;
719
- }
720
- });
721
- await page.exposeFunction('__mjRunView', async (params) => {
722
- try {
723
- return await runView.RunView(params, contextUser);
724
- }
725
- catch (error) {
726
- console.error('Error in __mjRunView:', error);
727
- const errorMessage = error instanceof Error ? error.message : String(error);
728
- return { Success: false, ErrorMessage: errorMessage, Results: [] };
729
- }
730
- });
731
- await page.exposeFunction('__mjRunViews', async (params) => {
732
- try {
733
- return await runView.RunViews(params, contextUser);
734
- }
735
- catch (error) {
736
- console.error('Error in __mjRunViews:', error);
737
- const errorMessage = error instanceof Error ? error.message : String(error);
738
- return params.map(() => ({ Success: false, ErrorMessage: errorMessage, Results: [] }));
739
- }
740
- });
741
- await page.exposeFunction('__mjRunQuery', async (params) => {
742
- try {
743
- return await runQuery.RunQuery(params, contextUser);
744
- }
745
- catch (error) {
746
- console.error('Error in __mjRunQuery:', error);
747
- const errorMessage = error instanceof Error ? error.message : String(error);
748
- return { Success: false, ErrorMessage: errorMessage, Results: [] };
937
+ try {
938
+ // Create instances in Node.js context
939
+ const metadata = new core_1.Metadata();
940
+ const runView = new core_1.RunView();
941
+ const runQuery = new core_1.RunQuery();
942
+ // Expose individual functions since we can't pass complex objects
943
+ await page.exposeFunction('__mjGetEntityObject', async (entityName) => {
944
+ try {
945
+ const entity = await metadata.GetEntityObject(entityName, contextUser);
946
+ return entity;
947
+ }
948
+ catch (error) {
949
+ console.error('Error in __mjGetEntityObject:', error);
950
+ return null;
951
+ }
952
+ });
953
+ await page.exposeFunction('__mjGetEntities', () => {
954
+ try {
955
+ return metadata.Entities;
956
+ }
957
+ catch (error) {
958
+ console.error('Error in __mjGetEntities:', error);
959
+ return null;
960
+ }
961
+ });
962
+ await page.exposeFunction('__mjRunView', async (params) => {
963
+ try {
964
+ return await runView.RunView(params, contextUser);
965
+ }
966
+ catch (error) {
967
+ console.error('Error in __mjRunView:', error);
968
+ const errorMessage = error instanceof Error ? error.message : String(error);
969
+ return { Success: false, ErrorMessage: errorMessage, Results: [] };
970
+ }
971
+ });
972
+ await page.exposeFunction('__mjRunViews', async (params) => {
973
+ try {
974
+ return await runView.RunViews(params, contextUser);
975
+ }
976
+ catch (error) {
977
+ console.error('Error in __mjRunViews:', error);
978
+ const errorMessage = error instanceof Error ? error.message : String(error);
979
+ return params.map(() => ({ Success: false, ErrorMessage: errorMessage, Results: [] }));
980
+ }
981
+ });
982
+ await page.exposeFunction('__mjRunQuery', async (params) => {
983
+ try {
984
+ return await runQuery.RunQuery(params, contextUser);
985
+ }
986
+ catch (error) {
987
+ console.error('Error in __mjRunQuery:', error);
988
+ const errorMessage = error instanceof Error ? error.message : String(error);
989
+ return { Success: false, ErrorMessage: errorMessage, Results: [] };
990
+ }
991
+ });
992
+ }
993
+ catch (error) {
994
+ console.error('Failed to expose MJ utilities to page:', error);
995
+ // Log more details about the error
996
+ if (error instanceof Error && error.message.includes('addBinding')) {
997
+ console.error('addBinding error - this usually means the page context is invalid');
749
998
  }
750
- });
999
+ throw error; // Re-throw to be caught by the main error handler
1000
+ }
751
1001
  }
752
1002
  /**
753
1003
  * Analyze component errors to identify failed components
@@ -1 +1 @@
1
- {"version":3,"file":"component-runner.js","sourceRoot":"","sources":["../../src/lib/component-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component-runner.js","sourceRoot":"","sources":["../../src/lib/component-runner.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,32 @@ export interface TestHarnessOptions extends BrowserContextOptions {
7
7
  screenshotOnError?: boolean;
8
8
  screenshotPath?: string;
9
9
  }
10
+ /**
11
+ * React Test Harness for testing React components in an isolated browser environment
12
+ *
13
+ * IMPORTANT: Parallel Testing Limitation
14
+ * ----------------------------------------
15
+ * This test harness uses a single browser page instance and is NOT safe for parallel test execution
16
+ * on the same instance. For parallel testing, create separate ReactTestHarness instances:
17
+ *
18
+ * @example
19
+ * // āœ… CORRECT - Parallel testing with separate instances
20
+ * const results = await Promise.all(tests.map(async (test) => {
21
+ * const harness = new ReactTestHarness(options);
22
+ * await harness.initialize();
23
+ * try {
24
+ * return await harness.testComponent(test);
25
+ * } finally {
26
+ * await harness.close();
27
+ * }
28
+ * }));
29
+ *
30
+ * @example
31
+ * // āŒ WRONG - Parallel testing on same instance (will cause conflicts)
32
+ * const harness = new ReactTestHarness(options);
33
+ * await harness.initialize();
34
+ * const results = await Promise.all(tests.map(test => harness.testComponent(test)));
35
+ */
10
36
  export declare class ReactTestHarness {
11
37
  private browserManager;
12
38
  private componentRunner;
@@ -17,6 +43,11 @@ export declare class ReactTestHarness {
17
43
  * Test a component with its full hierarchy of child components
18
44
  */
19
45
  testComponent(options: ComponentExecutionOptions): Promise<ComponentExecutionResult>;
46
+ /**
47
+ * Test a simple component from code string
48
+ * This is a convenience method for testing component code directly
49
+ */
50
+ testComponentCode(componentCode: string, props?: Record<string, any>, options?: Partial<ComponentExecutionOptions>): Promise<ComponentExecutionResult>;
20
51
  /**
21
52
  * Test a component from a file path
22
53
  * This is a convenience method for the CLI
@@ -1 +1 @@
1
- {"version":3,"file":"test-harness.d.ts","sourceRoot":"","sources":["../../src/lib/test-harness.ts"],"names":[],"mappings":";AAAA,OAAO,EAAkB,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAmB,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC1G,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,OAAO,CAAqB;gBAExB,OAAO,GAAE,kBAAuB;IAYtC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,wBAAwB,CAAC;IAmDpC;;;OAGG;IACG,qBAAqB,CACzB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1B,OAAO,EAAE,IAAI,CAAC,yBAAyB,EAAE,eAAe,CAAC,GACxD,OAAO,CAAC,wBAAwB,CAAC;IA+B9B,OAAO,CACX,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC1B,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAyBzE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC;QAC/E,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACrF,CAAC;IA0BF,mBAAmB;IAInB,aAAa,CAAC,IAAI,EAAE,MAAM;;;;;;IAIpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;CAG/E"}
1
+ {"version":3,"file":"test-harness.d.ts","sourceRoot":"","sources":["../../src/lib/test-harness.ts"],"names":[],"mappings":";AAAA,OAAO,EAAkB,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAmB,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC1G,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,OAAO,CAAqB;gBAExB,OAAO,GAAE,kBAAuB;IAYtC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,wBAAwB,CAAC;IAmDpC;;;OAGG;IACG,iBAAiB,CACrB,aAAa,EAAE,MAAM,EACrB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAC3C,OAAO,CAAC,wBAAwB,CAAC;IAyBpC;;;OAGG;IACG,qBAAqB,CACzB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1B,OAAO,EAAE,IAAI,CAAC,yBAAyB,EAAE,eAAe,CAAC,GACxD,OAAO,CAAC,wBAAwB,CAAC;IAgC9B,OAAO,CACX,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC1B,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAyBzE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC;QAC/E,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACrF,CAAC;IA0BF,mBAAmB;IAInB,aAAa,CAAC,IAAI,EAAE,MAAM;;;;;;IAIpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;CAG/E"}