@@ -17,6 +17,7 @@ package board_test
17
17
18
18
import (
19
19
"os"
20
+ "strings"
20
21
"testing"
21
22
22
23
"github.com/arduino/arduino-cli/internal/integrationtest"
@@ -267,3 +268,25 @@ func TestBoardDetailsNoFlags(t *testing.T) {
267
268
require .Contains (t , string (stderr ), "Error: required flag(s) \" fqbn\" not set" )
268
269
require .Empty (t , stdout )
269
270
}
271
+
272
+ func TestBoardDetailsListProgrammersWithoutFlag (t * testing.T ) {
273
+ env , cli := integrationtest .CreateArduinoCLIWithEnvironment (t )
274
+ defer env .CleanUp ()
275
+
276
+ _ , _ , err := cli .Run ("core" , "update-index" )
277
+ require .NoError (t , err )
278
+ // Download samd core pinned to 1.8.6
279
+ _ , _ , err = cli .Run ("core" , "install" , "arduino:samd@1.8.6" )
280
+ require .NoError (t , err )
281
+ stdout , _ , err := cli .Run ("board" , "details" , "-b" , "arduino:samd:nano_33_iot" )
282
+ require .NoError (t , err )
283
+ split := strings .Split (string (stdout ), "\n " )
284
+ lines := make ([][]string , len (split ))
285
+ for i , l := range split {
286
+ lines [i ] = strings .Fields (l )
287
+ }
288
+ require .Contains (t , lines , []string {"Programmers:" , "Id" , "Name" })
289
+ require .Contains (t , lines , []string {"edbg" , "Atmel" , "EDBG" })
290
+ require .Contains (t , lines , []string {"atmel_ice" , "Atmel-ICE" })
291
+ require .Contains (t , lines , []string {"sam_ice" , "Atmel" , "SAM-ICE" })
292
+ }
0 commit comments