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