@@ -369,6 +369,37 @@ func detectLatestAVRCore(t *testing.T) string {
369
369
return latest .String ()
370
370
}
371
371
372
+ func TestCompileCommands (t * testing.T ) {
373
+ defer makeTempDataDir (t )()
374
+ defer makeTempSketchbookDir (t )()
375
+
376
+ // Set staging dir to a temporary dir
377
+ tmp , err := ioutil .TempDir (os .TempDir (), "test" )
378
+ require .NoError (t , err , "making temporary staging dir" )
379
+ defer os .RemoveAll (tmp )
380
+
381
+ updateCoreIndex (t )
382
+
383
+ // Download latest AVR
384
+ exitCode , _ := executeWithArgs (t , "core" , "install" , "arduino:avr" )
385
+ require .Zero (t , exitCode , "exit code" )
386
+
387
+ // Create a test sketch
388
+ exitCode , d := executeWithArgs (t , "sketch" , "new" , "Test1" )
389
+ require .Zero (t , exitCode , "exit code" )
390
+ require .Contains (t , string (d ), "Sketch created" )
391
+
392
+ // Build sketch for arduino:avr:uno
393
+ exitCode , d = executeWithArgs (t , "compile" , "-b" , "arduino:avr:uno" , currSketchbookDir .Join ("Test1" ).String ())
394
+ require .Zero (t , exitCode , "exit code" )
395
+ require .Contains (t , string (d ), "Sketch uses" )
396
+
397
+ // Build sketch for arduino:avr:nano (without options)
398
+ exitCode , d = executeWithArgs (t , "compile" , "-b" , "arduino:avr:nano" , currSketchbookDir .Join ("Test1" ).String ())
399
+ require .Zero (t , exitCode , "exit code" )
400
+ require .Contains (t , string (d ), "Sketch uses" )
401
+ }
402
+
372
403
func TestCoreCommands (t * testing.T ) {
373
404
defer makeTempDataDir (t )()
374
405
defer makeTempSketchbookDir (t )()
@@ -473,15 +504,6 @@ func TestCoreCommands(t *testing.T) {
473
504
require .Zero (t , exitCode , "exit code" )
474
505
require .Contains (t , string (d ), "arduino:avr" )
475
506
476
- // Build sketch for arduino:avr:uno
477
- exitCode , d = executeWithArgs (t , "sketch" , "new" , "Test1" )
478
- require .Zero (t , exitCode , "exit code" )
479
- require .Contains (t , string (d ), "Sketch created" )
480
-
481
- exitCode , d = executeWithArgs (t , "compile" , "-b" , "arduino:avr:uno" , currSketchbookDir .Join ("Test1" ).String ())
482
- require .Zero (t , exitCode , "exit code" )
483
- require .Contains (t , string (d ), "Sketch uses" )
484
-
485
507
// Uninstall arduino:avr
486
508
exitCode , d = executeWithArgs (t , "core" , "uninstall" , "arduino:avr" )
487
509
require .Zero (t , exitCode , "exit code" )
0 commit comments