Skip to content

Commit e1bb7ea

Browse files
Add test to check if sketch new does not overwrite an already existing .ino sketch file
1 parent a012824 commit e1bb7ea

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

Diff for: internal/integrationtest/sketch/sketch_test.go

+21
Original file line numberDiff line numberDiff line change
@@ -362,3 +362,24 @@ func TestSketchArchiveCaseMismatchFails(t *testing.T) {
362362
require.Error(t, err)
363363
require.Contains(t, string(stderr), "Error archiving: Can't open sketch:")
364364
}
365+
366+
func TestSketchNewDotArgOverwrite(t *testing.T) {
367+
env, cli := integrationtest.CreateArduinoCLIWithEnvironment(t)
368+
defer env.CleanUp()
369+
370+
sketchNew := "SketchNewDotArgOverwrite"
371+
sketchPath := cli.SketchbookDir().Join(sketchNew)
372+
require.NoError(t, sketchPath.MkdirAll())
373+
374+
cli.SetWorkingDir(sketchPath)
375+
require.NoFileExists(t, sketchPath.Join(sketchNew+".ino").String())
376+
// Create a new sketch
377+
_, _, err := cli.Run("sketch", "new", ".")
378+
require.NoError(t, err)
379+
380+
require.FileExists(t, sketchPath.Join(sketchNew+".ino").String())
381+
// Tries to overwrite the existing sketch with a new one, but it should fail
382+
_, stderr, err := cli.Run("sketch", "new", ".")
383+
require.Error(t, err)
384+
require.Contains(t, string(stderr), ".ino file already exists")
385+
}

0 commit comments

Comments
 (0)