@@ -78,15 +78,23 @@ let out = child_process.spawnSync(`../../../rescript`, ["build", "--help"], {
7878 cwd : __dirname ,
7979} ) ;
8080assert . equal ( out . stdout , buildHelp ) ;
81+ assert . equal ( out . stderr , "" ) ;
8182assert . equal ( out . status , 0 ) ;
8283
83- // Shows build help with --help arg
84+ // FIXME: Help works incorrectly in watch mode
8485out = child_process . spawnSync ( `../../../rescript` , [ "build" , "-w" , "--help" ] , {
8586 encoding : "utf8" ,
8687 cwd : __dirname ,
8788} ) ;
8889// FIXME: Shouldn't have "Start compiling" for help
8990assert . equal ( out . stdout , ">>>> Start compiling\n" + buildHelp ) ;
91+ // FIXME: Don't run the watcher when showing help
92+ assert . match (
93+ out . stderr ,
94+ new RegExp (
95+ "Uncaught Exception Error: ENOENT: no such file or directory, watch 'bsconfig.json'\n"
96+ )
97+ ) ;
9098// FIXME: Should be 0
9199assert . equal ( out . status , 1 ) ;
92100
@@ -96,14 +104,16 @@ out = child_process.spawnSync(`../../../rescript`, ["build", "-h"], {
96104 cwd : __dirname ,
97105} ) ;
98106assert . equal ( out . stdout , buildHelp ) ;
107+ assert . equal ( out . stderr , "" ) ;
99108assert . equal ( out . status , 0 ) ;
100109
101110// Exits with build help with unknown arg
102111out = child_process . spawnSync ( `../../../rescript` , [ "build" , "-wtf" ] , {
103112 encoding : "utf8" ,
104113 cwd : __dirname ,
105114} ) ;
106- assert . equal ( out . stderr , 'Error: Unknown option "-wtf".\n' + buildHelp + "\n" ) ;
115+ assert . equal ( out . stdout , "" ) ;
116+ assert . equal ( out . stderr , 'Error: Unknown option "-wtf".\n' + buildHelp ) ;
107117assert . equal ( out . status , 2 ) ;
108118
109119// Shows cli help with --help arg
@@ -112,6 +122,7 @@ out = child_process.spawnSync(`../../../rescript`, ["--help"], {
112122 cwd : __dirname ,
113123} ) ;
114124assert . equal ( out . stdout , cliHelp ) ;
125+ assert . equal ( out . stderr , "" ) ;
115126assert . equal ( out . status , 0 ) ;
116127
117128// Shows cli help with -h arg
@@ -120,6 +131,7 @@ out = child_process.spawnSync(`../../../rescript`, ["-h"], {
120131 cwd : __dirname ,
121132} ) ;
122133assert . equal ( out . stdout , cliHelp ) ;
134+ assert . equal ( out . stderr , "" ) ;
123135assert . equal ( out . status , 0 ) ;
124136
125137// Shows cli help with help command
@@ -128,13 +140,15 @@ out = child_process.spawnSync(`../../../rescript`, ["help"], {
128140 cwd : __dirname ,
129141} ) ;
130142assert . equal ( out . stdout , cliHelp ) ;
143+ assert . equal ( out . stderr , "" ) ;
131144assert . equal ( out . status , 0 ) ;
132145
133146// Shows cli help with unknown command
134147out = child_process . spawnSync ( `../../../rescript` , [ "built" ] , {
135148 encoding : "utf8" ,
136149 cwd : __dirname ,
137150} ) ;
151+ assert . equal ( out . stdout , "" ) ;
138152assert . equal ( out . stderr , `Error: Unknown command or flag "built".\n` + cliHelp ) ;
139153assert . equal ( out . status , 2 ) ;
140154
@@ -143,6 +157,7 @@ out = child_process.spawnSync(`../../../rescript`, ["-w"], {
143157 encoding : "utf8" ,
144158 cwd : __dirname ,
145159} ) ;
160+ assert . equal ( out . stdout , "" ) ;
146161assert . equal ( out . stderr , `Error: Unknown command or flag "-w".\n` + cliHelp ) ;
147162assert . equal ( out . status , 2 ) ;
148163
@@ -152,6 +167,7 @@ out = child_process.spawnSync(`../../../rescript`, ["clean", "--help"], {
152167 cwd : __dirname ,
153168} ) ;
154169assert . equal ( out . stdout , cleanHelp ) ;
170+ assert . equal ( out . stderr , "" ) ;
155171assert . equal ( out . status , 0 ) ;
156172
157173// Shows clean help with -h arg
@@ -160,66 +176,68 @@ out = child_process.spawnSync(`../../../rescript`, ["clean", "-h"], {
160176 cwd : __dirname ,
161177} ) ;
162178assert . equal ( out . stdout , cleanHelp ) ;
179+ assert . equal ( out . stderr , "" ) ;
163180assert . equal ( out . status , 0 ) ;
164181
165182// Exits with clean help with unknown arg
166183out = child_process . spawnSync ( `../../../rescript` , [ "clean" , "-wtf" ] , {
167184 encoding : "utf8" ,
168185 cwd : __dirname ,
169186} ) ;
170- assert . equal ( out . stderr , 'Error: Unknown option "-wtf".\n' + cleanHelp + "\n" ) ;
187+ assert . equal ( out . stdout , "" ) ;
188+ assert . equal ( out . stderr , 'Error: Unknown option "-wtf".\n' + cleanHelp ) ;
171189assert . equal ( out . status , 2 ) ;
172190
173191// Shows format help with --help arg
174192out = child_process . spawnSync ( `../../../rescript` , [ "format" , "--help" ] , {
175193 encoding : "utf8" ,
176194 cwd : __dirname ,
177195} ) ;
178- // Note: it writes to stderr
179- assert . equal ( out . stderr , formatHelp ) ;
196+ assert . equal ( out . stdout , formatHelp ) ;
197+ assert . equal ( out . stderr , "" ) ;
180198assert . equal ( out . status , 0 ) ;
181199
182200// Shows format help with -h arg
183201out = child_process . spawnSync ( `../../../rescript` , [ "format" , "-h" ] , {
184202 encoding : "utf8" ,
185203 cwd : __dirname ,
186204} ) ;
187- // Note: it writes to stderr
188- assert . equal ( out . stderr , formatHelp ) ;
205+ assert . equal ( out . stdout , formatHelp ) ;
206+ assert . equal ( out . stderr , "" ) ;
189207assert . equal ( out . status , 0 ) ;
190208
191209// Shows convert help with --help arg
192210out = child_process . spawnSync ( `../../../rescript` , [ "convert" , "--help" ] , {
193211 encoding : "utf8" ,
194212 cwd : __dirname ,
195213} ) ;
196- // Note: it writes to stderr
197- assert . equal ( out . stderr , convertHelp ) ;
214+ assert . equal ( out . stdout , convertHelp ) ;
215+ assert . equal ( out . stderr , "" ) ;
198216assert . equal ( out . status , 0 ) ;
199217
200218// Shows convert help with -h arg
201219out = child_process . spawnSync ( `../../../rescript` , [ "convert" , "-h" ] , {
202220 encoding : "utf8" ,
203221 cwd : __dirname ,
204222} ) ;
205- // Note: it writes to stderr
206- assert . equal ( out . stderr , convertHelp ) ;
223+ assert . equal ( out . stdout , convertHelp ) ;
224+ assert . equal ( out . stderr , "" ) ;
207225assert . equal ( out . status , 0 ) ;
208226
209227// Shows dump help with --help arg
210228out = child_process . spawnSync ( `../../../rescript` , [ "dump" , "--help" ] , {
211229 encoding : "utf8" ,
212230 cwd : __dirname ,
213231} ) ;
214- // Note: it writes to stderr
215- assert . equal ( out . stderr , dumpHelp ) ;
232+ assert . equal ( out . stdout , dumpHelp ) ;
233+ assert . equal ( out . stderr , "" ) ;
216234assert . equal ( out . status , 0 ) ;
217235
218236// Shows dump help with -h arg
219237out = child_process . spawnSync ( `../../../rescript` , [ "dump" , "-h" ] , {
220238 encoding : "utf8" ,
221239 cwd : __dirname ,
222240} ) ;
223- // Note: it writes to stderr
224- assert . equal ( out . stderr , dumpHelp ) ;
241+ assert . equal ( out . stdout , dumpHelp ) ;
242+ assert . equal ( out . stderr , "" ) ;
225243assert . equal ( out . status , 0 ) ;
0 commit comments