From 03fa974e100bfd7323e771a4f9a59532d2a0bacf Mon Sep 17 00:00:00 2001 From: Cristian Maglie Date: Thu, 17 Aug 2023 17:26:25 +0200 Subject: [PATCH] Added integration test --- .../integrationtest/compile_3/compile_test.go | 33 ++++++++++++++----- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/internal/integrationtest/compile_3/compile_test.go b/internal/integrationtest/compile_3/compile_test.go index 8e6aa34296e..2df3d59f40d 100644 --- a/internal/integrationtest/compile_3/compile_test.go +++ b/internal/integrationtest/compile_3/compile_test.go @@ -107,15 +107,32 @@ func TestCompilerErrOutput(t *testing.T) { _, _, err := cli.Run("core", "install", "arduino:avr@1.8.5") require.NoError(t, err) - // prepare sketch - sketch, err := paths.New("testdata", "blink_with_wrong_cpp").Abs() - require.NoError(t, err) + { + // prepare sketch + sketch, err := paths.New("testdata", "blink_with_wrong_cpp").Abs() + require.NoError(t, err) + + // Run compile and catch err stream + out, _, err := cli.Run("compile", "-b", "arduino:avr:uno", "--format", "json", sketch.String()) + require.Error(t, err) + compilerErr := requirejson.Parse(t, out).Query(".compiler_err") + compilerErr.MustContain(`"error"`) + } - // Run compile and catch err stream - out, _, err := cli.Run("compile", "-b", "arduino:avr:uno", "--format", "json", sketch.String()) - require.Error(t, err) - compilerErr := requirejson.Parse(t, out).Query(".compiler_err") - compilerErr.MustContain(`"error"`) + // Check that library discover do not generate false errors + // https://github.com/arduino/arduino-cli/issues/2263 + { + // prepare sketch + sketch, err := paths.New("testdata", "using_Wire").Abs() + require.NoError(t, err) + + // Run compile and catch err stream + out, _, err := cli.Run("compile", "-b", "arduino:avr:uno", "-v", "--format", "json", sketch.String()) + require.NoError(t, err) + jsonOut := requirejson.Parse(t, out) + jsonOut.Query(".compiler_out").MustNotContain(`"fatal error"`) + jsonOut.Query(".compiler_err").MustNotContain(`"fatal error"`) + } } func TestCompileRelativeLibraryPath(t *testing.T) {