@rnx-kit/cli 0.16.22 → 0.16.23

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 (83) hide show
  1. package/package.json +18 -8
  2. package/CHANGELOG.md +0 -1669
  3. package/coverage/clover.xml +0 -323
  4. package/coverage/coverage-final.json +0 -8
  5. package/coverage/lcov-report/base.css +0 -224
  6. package/coverage/lcov-report/block-navigation.js +0 -87
  7. package/coverage/lcov-report/favicon.png +0 -0
  8. package/coverage/lcov-report/index.html +0 -131
  9. package/coverage/lcov-report/prettify.css +0 -1
  10. package/coverage/lcov-report/prettify.js +0 -2
  11. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  12. package/coverage/lcov-report/sorter.js +0 -196
  13. package/coverage/lcov-report/src/bundle/defaultPlugins.ts.html +0 -133
  14. package/coverage/lcov-report/src/bundle/index.html +0 -161
  15. package/coverage/lcov-report/src/bundle/kit-config.ts.html +0 -328
  16. package/coverage/lcov-report/src/bundle/metro.ts.html +0 -283
  17. package/coverage/lcov-report/src/bundle/overrides.ts.html +0 -238
  18. package/coverage/lcov-report/src/copy-assets.ts.html +0 -1720
  19. package/coverage/lcov-report/src/index.html +0 -146
  20. package/coverage/lcov-report/src/metro-config.ts.html +0 -709
  21. package/coverage/lcov-report/src/test.ts.html +0 -496
  22. package/coverage/lcov.info +0 -605
  23. package/eslint.config.js +0 -1
  24. package/lib/align-deps.d.ts.map +0 -1
  25. package/lib/align-deps.js.map +0 -1
  26. package/lib/bundle/cliOptions.d.ts.map +0 -1
  27. package/lib/bundle/cliOptions.js.map +0 -1
  28. package/lib/bundle/defaultPlugins.d.ts.map +0 -1
  29. package/lib/bundle/defaultPlugins.js.map +0 -1
  30. package/lib/bundle/hermes.d.ts.map +0 -1
  31. package/lib/bundle/hermes.js.map +0 -1
  32. package/lib/bundle/kit-config.d.ts.map +0 -1
  33. package/lib/bundle/kit-config.js.map +0 -1
  34. package/lib/bundle/metro.d.ts.map +0 -1
  35. package/lib/bundle/metro.js.map +0 -1
  36. package/lib/bundle/overrides.d.ts.map +0 -1
  37. package/lib/bundle/overrides.js.map +0 -1
  38. package/lib/bundle/types.d.ts.map +0 -1
  39. package/lib/bundle/types.js.map +0 -1
  40. package/lib/bundle.d.ts.map +0 -1
  41. package/lib/bundle.js.map +0 -1
  42. package/lib/clean.d.ts.map +0 -1
  43. package/lib/clean.js.map +0 -1
  44. package/lib/copy-assets.d.ts.map +0 -1
  45. package/lib/copy-assets.js.map +0 -1
  46. package/lib/index.d.ts.map +0 -1
  47. package/lib/index.js.map +0 -1
  48. package/lib/metro-config.d.ts.map +0 -1
  49. package/lib/metro-config.js.map +0 -1
  50. package/lib/parsers.d.ts.map +0 -1
  51. package/lib/parsers.js.map +0 -1
  52. package/lib/ram-bundle.d.ts.map +0 -1
  53. package/lib/ram-bundle.js.map +0 -1
  54. package/lib/serve/external.d.ts.map +0 -1
  55. package/lib/serve/external.js.map +0 -1
  56. package/lib/serve/help.d.ts.map +0 -1
  57. package/lib/serve/help.js.map +0 -1
  58. package/lib/serve/keyboard.d.ts.map +0 -1
  59. package/lib/serve/keyboard.js.map +0 -1
  60. package/lib/serve/kit-config.d.ts.map +0 -1
  61. package/lib/serve/kit-config.js.map +0 -1
  62. package/lib/serve/types.d.ts.map +0 -1
  63. package/lib/serve/types.js.map +0 -1
  64. package/lib/start.d.ts.map +0 -1
  65. package/lib/start.js.map +0 -1
  66. package/lib/test.d.ts.map +0 -1
  67. package/lib/test.js.map +0 -1
  68. package/lib/write-third-party-notices.d.ts.map +0 -1
  69. package/lib/write-third-party-notices.js.map +0 -1
  70. package/test/__mocks__/child_process.js +0 -5
  71. package/test/__mocks__/fs-extra.js +0 -20
  72. package/test/__mocks__/fs.js +0 -1
  73. package/test/bundle/__mocks__/@rnx-kit/config.js +0 -14
  74. package/test/bundle/__mocks__/@rnx-kit/console.js +0 -1
  75. package/test/bundle/__mocks__/@rnx-kit/metro-service.js +0 -1
  76. package/test/bundle/kit-config.test.ts +0 -160
  77. package/test/bundle/metro.test.ts +0 -78
  78. package/test/bundle/overrides.test.ts +0 -85
  79. package/test/copy-assets/assembleAarBundle.test.ts +0 -313
  80. package/test/copy-assets/copyAssets.test.ts +0 -122
  81. package/test/metro-config.test.ts +0 -206
  82. package/test/test.test.ts +0 -11
  83. package/tsconfig.json +0 -4
@@ -1,496 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/test.ts</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../prettify.css" />
9
- <link rel="stylesheet" href="../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../index.html">All files</a> / <a href="index.html">src</a> test.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">38.09% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>16/42</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">33.33% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>4/12</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">66.66% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>4/6</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">38.09% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>16/42</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line low'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
204
- <span class="cline-any cline-neutral">&nbsp;</span>
205
- <span class="cline-any cline-neutral">&nbsp;</span>
206
- <span class="cline-any cline-neutral">&nbsp;</span>
207
- <span class="cline-any cline-neutral">&nbsp;</span>
208
- <span class="cline-any cline-neutral">&nbsp;</span>
209
- <span class="cline-any cline-neutral">&nbsp;</span>
210
- <span class="cline-any cline-neutral">&nbsp;</span>
211
- <span class="cline-any cline-neutral">&nbsp;</span>
212
- <span class="cline-any cline-neutral">&nbsp;</span>
213
- <span class="cline-any cline-neutral">&nbsp;</span>
214
- <span class="cline-any cline-neutral">&nbsp;</span>
215
- <span class="cline-any cline-neutral">&nbsp;</span>
216
- <span class="cline-any cline-neutral">&nbsp;</span>
217
- <span class="cline-any cline-neutral">&nbsp;</span>
218
- <span class="cline-any cline-neutral">&nbsp;</span>
219
- <span class="cline-any cline-neutral">&nbsp;</span>
220
- <span class="cline-any cline-neutral">&nbsp;</span>
221
- <span class="cline-any cline-neutral">&nbsp;</span>
222
- <span class="cline-any cline-neutral">&nbsp;</span>
223
- <span class="cline-any cline-neutral">&nbsp;</span>
224
- <span class="cline-any cline-neutral">&nbsp;</span>
225
- <span class="cline-any cline-neutral">&nbsp;</span>
226
- <span class="cline-any cline-yes">1x</span>
227
- <span class="cline-any cline-yes">1x</span>
228
- <span class="cline-any cline-neutral">&nbsp;</span>
229
- <span class="cline-any cline-neutral">&nbsp;</span>
230
- <span class="cline-any cline-neutral">&nbsp;</span>
231
- <span class="cline-any cline-neutral">&nbsp;</span>
232
- <span class="cline-any cline-neutral">&nbsp;</span>
233
- <span class="cline-any cline-neutral">&nbsp;</span>
234
- <span class="cline-any cline-no">&nbsp;</span>
235
- <span class="cline-any cline-no">&nbsp;</span>
236
- <span class="cline-any cline-no">&nbsp;</span>
237
- <span class="cline-any cline-no">&nbsp;</span>
238
- <span class="cline-any cline-neutral">&nbsp;</span>
239
- <span class="cline-any cline-no">&nbsp;</span>
240
- <span class="cline-any cline-no">&nbsp;</span>
241
- <span class="cline-any cline-neutral">&nbsp;</span>
242
- <span class="cline-any cline-neutral">&nbsp;</span>
243
- <span class="cline-any cline-neutral">&nbsp;</span>
244
- <span class="cline-any cline-no">&nbsp;</span>
245
- <span class="cline-any cline-no">&nbsp;</span>
246
- <span class="cline-any cline-no">&nbsp;</span>
247
- <span class="cline-any cline-neutral">&nbsp;</span>
248
- <span class="cline-any cline-neutral">&nbsp;</span>
249
- <span class="cline-any cline-neutral">&nbsp;</span>
250
- <span class="cline-any cline-no">&nbsp;</span>
251
- <span class="cline-any cline-neutral">&nbsp;</span>
252
- <span class="cline-any cline-no">&nbsp;</span>
253
- <span class="cline-any cline-no">&nbsp;</span>
254
- <span class="cline-any cline-no">&nbsp;</span>
255
- <span class="cline-any cline-neutral">&nbsp;</span>
256
- <span class="cline-any cline-neutral">&nbsp;</span>
257
- <span class="cline-any cline-neutral">&nbsp;</span>
258
- <span class="cline-any cline-neutral">&nbsp;</span>
259
- <span class="cline-any cline-no">&nbsp;</span>
260
- <span class="cline-any cline-neutral">&nbsp;</span>
261
- <span class="cline-any cline-no">&nbsp;</span>
262
- <span class="cline-any cline-no">&nbsp;</span>
263
- <span class="cline-any cline-neutral">&nbsp;</span>
264
- <span class="cline-any cline-neutral">&nbsp;</span>
265
- <span class="cline-any cline-neutral">&nbsp;</span>
266
- <span class="cline-any cline-yes">2x</span>
267
- <span class="cline-any cline-yes">2x</span>
268
- <span class="cline-any cline-yes">2x</span>
269
- <span class="cline-any cline-yes">2x</span>
270
- <span class="cline-any cline-neutral">&nbsp;</span>
271
- <span class="cline-any cline-no">&nbsp;</span>
272
- <span class="cline-any cline-neutral">&nbsp;</span>
273
- <span class="cline-any cline-neutral">&nbsp;</span>
274
- <span class="cline-any cline-yes">2x</span>
275
- <span class="cline-any cline-no">&nbsp;</span>
276
- <span class="cline-any cline-neutral">&nbsp;</span>
277
- <span class="cline-any cline-neutral">&nbsp;</span>
278
- <span class="cline-any cline-yes">2x</span>
279
- <span class="cline-any cline-neutral">&nbsp;</span>
280
- <span class="cline-any cline-neutral">&nbsp;</span>
281
- <span class="cline-any cline-yes">2x</span>
282
- <span class="cline-any cline-yes">2x</span>
283
- <span class="cline-any cline-yes">2x</span>
284
- <span class="cline-any cline-neutral">&nbsp;</span>
285
- <span class="cline-any cline-neutral">&nbsp;</span>
286
- <span class="cline-any cline-neutral">&nbsp;</span>
287
- <span class="cline-any cline-neutral">&nbsp;</span>
288
- <span class="cline-any cline-neutral">&nbsp;</span>
289
- <span class="cline-any cline-neutral">&nbsp;</span>
290
- <span class="cline-any cline-neutral">&nbsp;</span>
291
- <span class="cline-any cline-neutral">&nbsp;</span>
292
- <span class="cline-any cline-neutral">&nbsp;</span>
293
- <span class="cline-any cline-neutral">&nbsp;</span>
294
- <span class="cline-any cline-neutral">&nbsp;</span>
295
- <span class="cline-any cline-neutral">&nbsp;</span>
296
- <span class="cline-any cline-no">&nbsp;</span>
297
- <span class="cline-any cline-neutral">&nbsp;</span>
298
- <span class="cline-any cline-no">&nbsp;</span>
299
- <span class="cline-any cline-neutral">&nbsp;</span>
300
- <span class="cline-any cline-neutral">&nbsp;</span>
301
- <span class="cline-any cline-no">&nbsp;</span>
302
- <span class="cline-any cline-no">&nbsp;</span>
303
- <span class="cline-any cline-neutral">&nbsp;</span>
304
- <span class="cline-any cline-neutral">&nbsp;</span>
305
- <span class="cline-any cline-neutral">&nbsp;</span>
306
- <span class="cline-any cline-neutral">&nbsp;</span>
307
- <span class="cline-any cline-no">&nbsp;</span>
308
- <span class="cline-any cline-no">&nbsp;</span>
309
- <span class="cline-any cline-no">&nbsp;</span>
310
- <span class="cline-any cline-neutral">&nbsp;</span>
311
- <span class="cline-any cline-neutral">&nbsp;</span>
312
- <span class="cline-any cline-neutral">&nbsp;</span>
313
- <span class="cline-any cline-neutral">&nbsp;</span>
314
- <span class="cline-any cline-no">&nbsp;</span>
315
- <span class="cline-any cline-neutral">&nbsp;</span>
316
- <span class="cline-any cline-yes">2x</span>
317
- <span class="cline-any cline-yes">208x</span>
318
- <span class="cline-any cline-yes">208x</span>
319
- <span class="cline-any cline-yes">208x</span>
320
- <span class="cline-any cline-neutral">&nbsp;</span>
321
- <span class="cline-any cline-neutral">&nbsp;</span>
322
- <span class="cline-any cline-neutral">&nbsp;</span>
323
- <span class="cline-any cline-neutral">&nbsp;</span>
324
- <span class="cline-any cline-neutral">&nbsp;</span>
325
- <span class="cline-any cline-neutral">&nbsp;</span>
326
- <span class="cline-any cline-neutral">&nbsp;</span>
327
- <span class="cline-any cline-yes">1x</span>
328
- <span class="cline-any cline-neutral">&nbsp;</span>
329
- <span class="cline-any cline-neutral">&nbsp;</span>
330
- <span class="cline-any cline-neutral">&nbsp;</span>
331
- <span class="cline-any cline-neutral">&nbsp;</span>
332
- <span class="cline-any cline-neutral">&nbsp;</span>
333
- <span class="cline-any cline-neutral">&nbsp;</span>
334
- <span class="cline-any cline-neutral">&nbsp;</span>
335
- <span class="cline-any cline-neutral">&nbsp;</span>
336
- <span class="cline-any cline-neutral">&nbsp;</span>
337
- <span class="cline-any cline-neutral">&nbsp;</span>
338
- <span class="cline-any cline-neutral">&nbsp;</span>
339
- <span class="cline-any cline-neutral">&nbsp;</span>
340
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import type { Config as CLIConfig } from "@react-native-community/cli-types";
341
- import { error } from "@rnx-kit/console";
342
- import {
343
- findPackageDir,
344
- resolveDependencyChain,
345
- } from "@rnx-kit/tools-node/package";
346
- import { parsePlatform } from "@rnx-kit/tools-react-native/platform";
347
- &nbsp;
348
- type Args = {
349
- platform: "android" | "ios" | "macos" | "windows" | "win32";
350
- };
351
- &nbsp;
352
- type Options = {
353
- name: string;
354
- description?: string;
355
- parse?: (val: string) =&gt; unknown;
356
- default?:
357
- | string
358
- | boolean
359
- | number
360
- | ((config: CLIConfig) =&gt; string | boolean | number);
361
- };
362
- &nbsp;
363
- const COMMAND_NAME = "rnx-test";
364
- const JEST_CLI = ["jest", "jest-cli"];
365
- &nbsp;
366
- export function <span class="fstat-no" title="function not covered" >rnxTest(</span>
367
- _argv: string[],
368
- { root }: CLIConfig,
369
- { platform }: Args
370
- ): void {
371
- const runJest: (argv: string[]) =&gt; void = <span class="cstat-no" title="statement not covered" >(<span class="fstat-no" title="function not covered" >()</span> =&gt; {</span>
372
- <span class="cstat-no" title="statement not covered" > try {</span>
373
- const { run } = <span class="cstat-no" title="statement not covered" >require(resolveDependencyChain(JEST_CLI, root));</span>
374
- <span class="cstat-no" title="statement not covered" > return run;</span>
375
- } catch (e) {
376
- <span class="cstat-no" title="statement not covered" > error("'rnx-test' is unavailable because 'jest' is not installed");</span>
377
- <span class="cstat-no" title="statement not covered" > throw e;</span>
378
- }
379
- })();
380
- &nbsp;
381
- const commandIndex = <span class="cstat-no" title="statement not covered" >process.argv.indexOf(COMMAND_NAME);</span>
382
- <span class="cstat-no" title="statement not covered" > if (commandIndex &lt; 0) {</span>
383
- <span class="cstat-no" title="statement not covered" > throw new Error("Failed to parse command arguments");</span>
384
- }
385
- &nbsp;
386
- // Copy and remove the first arguments from `node react-native rnx-test ...`
387
- const argv = <span class="cstat-no" title="statement not covered" >process.argv.slice(commandIndex + 1);</span>
388
- &nbsp;
389
- const platformIndex = <span class="cstat-no" title="statement not covered" >argv.indexOf("--platform");</span>
390
- <span class="cstat-no" title="statement not covered" > if (platformIndex &lt; 0) {</span>
391
- <span class="cstat-no" title="statement not covered" > throw new Error("A target platform must be specified");</span>
392
- }
393
- &nbsp;
394
- // Remove `--platform` otherwise Jest will complain about an unrecognized
395
- // option. We can pass the rest of the arguments to Jest as they are.
396
- <span class="cstat-no" title="statement not covered" > argv.splice(platformIndex, 2);</span>
397
- &nbsp;
398
- <span class="cstat-no" title="statement not covered" > process.env["RN_TARGET_PLATFORM"] = platform;</span>
399
- <span class="cstat-no" title="statement not covered" > runJest(argv);</span>
400
- }
401
- &nbsp;
402
- export function jestOptions(): Options[] {
403
- const options = (() =&gt; {
404
- const jestCliPath = (() =&gt; {
405
- try {
406
- return resolveDependencyChain(JEST_CLI);
407
- } catch (_) {
408
- <span class="cstat-no" title="statement not covered" > return undefined;</span>
409
- }
410
- })();
411
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!jestCliPath) {
412
- <span class="cstat-no" title="statement not covered" > return {};</span>
413
- }
414
- &nbsp;
415
- try {
416
- // `yargsOptions` is exported as of 29.5.0
417
- // https://github.com/jestjs/jest/commit/0e8ed24a527b951efe11ed49da46e0bd8c0ebef9
418
- const { yargsOptions } = require(jestCliPath);
419
- if (yargsOptions) {
420
- return yargsOptions;
421
- }
422
- } catch (_) {
423
- // ignore
424
- }
425
- &nbsp;
426
- // Starting with Jest 27, we are getting this error:
427
- //
428
- // Package subpath './build/cli/args' is not defined by "exports" in
429
- // /~/node_modules/jest-cli/package.json
430
- //
431
- // To work around this, resolve `jest-cli` first, then use the resolved
432
- // path to import `./build/cli/args`.
433
- const jestPath = <span class="cstat-no" title="statement not covered" >findPackageDir(jestCliPath) || "jest-cli";</span>
434
- &nbsp;
435
- <span class="cstat-no" title="statement not covered" > try {</span>
436
- // `args.js` was moved in 29.2.0
437
- // https://github.com/jestjs/jest/commit/2ecf723c50c5d25b2fe94e1ff8081f36aed9d67b
438
- const { options } = <span class="cstat-no" title="statement not covered" >require(`${jestPath}/build/args`);</span>
439
- <span class="cstat-no" title="statement not covered" > return options;</span>
440
- } catch (_) {
441
- // ignore
442
- }
443
- &nbsp;
444
- <span class="cstat-no" title="statement not covered" > try {</span>
445
- const { options } = <span class="cstat-no" title="statement not covered" >require(`${jestPath}/build/cli/args`);</span>
446
- <span class="cstat-no" title="statement not covered" > return options;</span>
447
- } catch (_) {
448
- // ignore
449
- }
450
- &nbsp;
451
- <span class="cstat-no" title="statement not covered" > return {};</span>
452
- })();
453
- return Object.keys(options).map((option) =&gt; {
454
- const { alias, default: defaultValue, description, type } = options[option];
455
- const name = `--${option} [${type}]`;
456
- return {
457
- name: alias ? `-${alias}, ${name}` : name,
458
- description,
459
- default: defaultValue,
460
- };
461
- });
462
- }
463
- &nbsp;
464
- export const rnxTestCommand = {
465
- name: COMMAND_NAME,
466
- description: "Test runner for React Native apps",
467
- func: rnxTest,
468
- options: [
469
- {
470
- name: "--platform [android|ios|macos|windows|win32]",
471
- description: "Platform to target",
472
- parse: parsePlatform,
473
- },
474
- ...jestOptions(),
475
- ],
476
- };
477
- &nbsp;</pre></td></tr></table></pre>
478
-
479
- <div class='push'></div><!-- for sticky footer -->
480
- </div><!-- /wrapper -->
481
- <div class='footer quiet pad2 space-top1 center small'>
482
- Code coverage generated by
483
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
484
- at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
485
- </div>
486
- <script src="../prettify.js"></script>
487
- <script>
488
- window.onload = function () {
489
- prettyPrint();
490
- };
491
- </script>
492
- <script src="../sorter.js"></script>
493
- <script src="../block-navigation.js"></script>
494
- </body>
495
- </html>
496
-