@react-native-harness/jest 1.1.0 → 1.2.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.
Files changed (93) hide show
  1. package/dist/__tests__/bridge.test.d.ts +2 -0
  2. package/dist/__tests__/bridge.test.d.ts.map +1 -0
  3. package/dist/__tests__/bridge.test.js +142 -0
  4. package/dist/__tests__/client-log-handler.test.js +116 -72
  5. package/dist/__tests__/crash-monitor.test.d.ts +2 -0
  6. package/dist/__tests__/crash-monitor.test.d.ts.map +1 -0
  7. package/dist/__tests__/crash-monitor.test.js +212 -0
  8. package/dist/__tests__/execute-run.test.d.ts +2 -0
  9. package/dist/__tests__/execute-run.test.d.ts.map +1 -0
  10. package/dist/__tests__/execute-run.test.js +229 -0
  11. package/dist/__tests__/harness.test.js +35 -0
  12. package/dist/__tests__/hook-queue.test.d.ts +2 -0
  13. package/dist/__tests__/hook-queue.test.d.ts.map +1 -0
  14. package/dist/__tests__/hook-queue.test.js +56 -0
  15. package/dist/__tests__/index.test.js +94 -37
  16. package/dist/__tests__/resource-lock.test.js +24 -24
  17. package/dist/cli-args.test.d.ts +2 -0
  18. package/dist/cli-args.test.d.ts.map +1 -0
  19. package/dist/cli-args.test.js +1 -0
  20. package/dist/client-log-handler.d.ts +10 -11
  21. package/dist/client-log-handler.d.ts.map +1 -1
  22. package/dist/client-log-handler.js +36 -58
  23. package/dist/crash-monitor.d.ts +23 -0
  24. package/dist/crash-monitor.d.ts.map +1 -0
  25. package/dist/crash-monitor.js +176 -0
  26. package/dist/event-mapper.d.ts +16 -0
  27. package/dist/event-mapper.d.ts.map +1 -0
  28. package/dist/event-mapper.js +120 -0
  29. package/dist/execute-run.d.ts +4 -0
  30. package/dist/execute-run.d.ts.map +1 -0
  31. package/dist/execute-run.js +151 -0
  32. package/dist/global-setup.d.ts +3 -0
  33. package/dist/global-setup.d.ts.map +1 -0
  34. package/dist/global-setup.js +60 -0
  35. package/dist/global-teardown.d.ts +3 -0
  36. package/dist/global-teardown.d.ts.map +1 -0
  37. package/dist/global-teardown.js +11 -0
  38. package/dist/harness-reporter.d.ts +8 -0
  39. package/dist/harness-reporter.d.ts.map +1 -0
  40. package/dist/harness-reporter.js +12 -0
  41. package/dist/harness-session.d.ts +34 -0
  42. package/dist/harness-session.d.ts.map +1 -0
  43. package/dist/harness-session.js +523 -0
  44. package/dist/harness.d.ts.map +1 -1
  45. package/dist/harness.js +6 -1
  46. package/dist/hook-queue.d.ts +6 -0
  47. package/dist/hook-queue.d.ts.map +1 -0
  48. package/dist/hook-queue.js +18 -0
  49. package/dist/index.d.ts +0 -3
  50. package/dist/index.d.ts.map +1 -1
  51. package/dist/index.js +12 -230
  52. package/dist/jest-options.d.ts +2 -0
  53. package/dist/jest-options.d.ts.map +1 -0
  54. package/dist/jest-options.js +1 -0
  55. package/dist/logs.d.ts +1 -0
  56. package/dist/logs.d.ts.map +1 -1
  57. package/dist/logs.js +3 -0
  58. package/dist/resource-lock.d.ts +0 -1
  59. package/dist/resource-lock.d.ts.map +1 -1
  60. package/dist/resource-lock.js +1 -1
  61. package/dist/run.d.ts +2 -2
  62. package/dist/run.d.ts.map +1 -1
  63. package/dist/run.js +3 -3
  64. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  65. package/dist/types.d.ts +17 -0
  66. package/dist/types.d.ts.map +1 -0
  67. package/dist/types.js +1 -0
  68. package/package.json +7 -8
  69. package/src/__tests__/bridge.test.ts +184 -0
  70. package/src/__tests__/client-log-handler.test.ts +117 -81
  71. package/src/__tests__/crash-monitor.test.ts +288 -0
  72. package/src/__tests__/execute-run.test.ts +325 -0
  73. package/src/__tests__/hook-queue.test.ts +77 -0
  74. package/src/__tests__/index.test.ts +135 -55
  75. package/src/__tests__/resource-lock.test.ts +29 -42
  76. package/src/client-log-handler.ts +48 -64
  77. package/src/crash-monitor.ts +248 -0
  78. package/src/execute-run.ts +199 -0
  79. package/src/harness-session.ts +734 -0
  80. package/src/hook-queue.ts +26 -0
  81. package/src/index.ts +17 -330
  82. package/src/logs.ts +4 -0
  83. package/src/resource-lock.ts +1 -1
  84. package/src/run.ts +5 -5
  85. package/tsconfig.tsbuildinfo +1 -0
  86. package/src/__tests__/crash-supervisor.test.ts +0 -200
  87. package/src/__tests__/harness-cache.test.ts +0 -74
  88. package/src/__tests__/harness.test.ts +0 -870
  89. package/src/crash-supervisor.ts +0 -321
  90. package/src/env.d.ts +0 -9
  91. package/src/harness.ts +0 -864
  92. package/src/setup.ts +0 -127
  93. package/src/teardown.ts +0 -14
@@ -1,74 +0,0 @@
1
- import { beforeEach, describe, expect, it, vi } from 'vitest';
2
- import type { Config as HarnessConfig } from '@react-native-harness/config';
3
- import type { HarnessPlatform } from '@react-native-harness/platforms';
4
-
5
- const mocks = vi.hoisted(() => ({
6
- isMetroCacheReusable: vi.fn(),
7
- logMetroCacheReused: vi.fn(),
8
- logMetroPrewarmCompleted: vi.fn(),
9
- }));
10
-
11
- vi.mock('@react-native-harness/bundler-metro', () => ({
12
- isMetroCacheReusable: mocks.isMetroCacheReusable,
13
- }));
14
-
15
- vi.mock('../logs.js', () => ({
16
- logMetroCacheReused: mocks.logMetroCacheReused,
17
- logMetroPrewarmCompleted: mocks.logMetroPrewarmCompleted,
18
- }));
19
-
20
- import { maybeLogMetroCacheReuse } from '../harness.js';
21
-
22
- const platform: HarnessPlatform = {
23
- name: 'ios',
24
- platformId: 'ios',
25
- runner: '/virtual/platform-runner.js',
26
- config: {},
27
- getResourceLockKey: () => 'ios:simulator:iPhone 17 Pro:26.2',
28
- };
29
-
30
- const createHarnessConfig = (
31
- overrides: Partial<HarnessConfig> = {}
32
- ): HarnessConfig =>
33
- ({
34
- appRegistryComponentName: 'App',
35
- disableViewFlattening: false,
36
- bridgeTimeout: 5000,
37
- entryPoint: 'index.js',
38
- unstable__enableMetroCache: true,
39
- forwardClientLogs: false,
40
- ...overrides,
41
- } as HarnessConfig);
42
-
43
- describe('maybeLogMetroCacheReuse', () => {
44
- beforeEach(() => {
45
- vi.clearAllMocks();
46
- mocks.isMetroCacheReusable.mockReturnValue(false);
47
- });
48
-
49
- it('logs when an existing metro cache will be reused', () => {
50
- mocks.isMetroCacheReusable.mockReturnValue(true);
51
-
52
- maybeLogMetroCacheReuse(createHarnessConfig(), platform, '/tmp/project');
53
-
54
- expect(mocks.isMetroCacheReusable).toHaveBeenCalledWith('/tmp/project');
55
- expect(mocks.logMetroCacheReused).toHaveBeenCalledWith(platform);
56
- });
57
-
58
- it('does not log when metro cache reuse is disabled', () => {
59
- maybeLogMetroCacheReuse(
60
- createHarnessConfig({ unstable__enableMetroCache: false }),
61
- platform,
62
- '/tmp/project'
63
- );
64
-
65
- expect(mocks.isMetroCacheReusable).not.toHaveBeenCalled();
66
- expect(mocks.logMetroCacheReused).not.toHaveBeenCalled();
67
- });
68
-
69
- it('does not log when the metro cache is absent', () => {
70
- maybeLogMetroCacheReuse(createHarnessConfig(), platform, '/tmp/project');
71
-
72
- expect(mocks.logMetroCacheReused).not.toHaveBeenCalled();
73
- });
74
- });