package cmd import ( "crypto/x509" "log" "os" "testing" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "gitlab.com/urkob/go-cert-gen/internal/io" ) func TestExecute(t *testing.T) { Execute() } func Test_getExtKeyUsage(t *testing.T) { intKeyUsageSlice := make([]int, 0, 1) intKeyUsageSlice = append(intKeyUsageSlice, int(x509.ExtKeyUsageClientAuth)) keyUsage := getExtKeyUsage(intKeyUsageSlice) assert.Len(t, keyUsage, len(intKeyUsageSlice)) assert.Equal(t, keyUsage[0], x509.ExtKeyUsageClientAuth) intKeyUsageSlice = make([]int, 0) keyUsage = getExtKeyUsage(intKeyUsageSlice) assert.Len(t, keyUsage, 0) keyUsage = getExtKeyUsage(nil) assert.Len(t, keyUsage, 0) } var testFile = "test-file.txt" func init() { wd, err := os.Getwd() if err != nil { log.Fatalf("os.Getwd: %s\n", err) } writer = io.NewWriter(wd) } func Test_exportPem(t *testing.T) { defer func() { os.Remove(testFile) err := os.Remove(testFile) require.NoError(t, err) }() data := []byte("test data") outputPath, err := exportPem(testFile, data) require.NoError(t, err) require.NotEmpty(t, outputPath) } func Test_exportPemError(t *testing.T) { data := []byte("test data") outputPath, err := exportPem("", data) require.Error(t, err) require.Empty(t, outputPath) }