INNER CODE UNIT · Go

TestKubeLinterExitsWithNonZeroCodeOnEmptyDir

stackrox/kube-linter · e2etests/sanity_test.go:55

func TestKubeLinterExitsWithNonZeroCodeOnEmptyDir(t *testing.T) {
	kubeLinterBin := os.Getenv(kubeLinterBinEnv)

	tmpDir, err := ioutil.TempDir("", "")
	require.NoError(t, err)
	defer func() {
		require.NoError(t, os.RemoveAll(tmpDir))
	}()
	kubeLinterOut, err := exec.Command(kubeLinterBin, "lint", tmpDir, "--fail-if-no-objects-found").CombinedOutput()

	// error is expected
	require.Error(t, err)
	exitErr, ok := err.(*exec.ExitError)
	require.True(t, ok)
	outAsStr := string(kubeLinterOut)
	assert.Equal(t, 1, exitErr.ExitCode(), "unexpected exit code: %d; output from kube-linter: %v", exitErr.ExitCode(), outAsStr)
	msg := "no valid objects found"
	assert.True(t, strings.Contains(outAsStr, fmt.Sprintf("Error: %s", msg)), "unexpected output, it should contain: %s", outAsStr)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…