test: Increase test coverage to over 90%
Increases the test coverage of the project to over 90%. - Increases the test coverage of the `cmd/trix` package from 82.3% to 83.3%. - Increases the test coverage of the `pkg/crypt/std/pgp` package from 84.0% to over 90%. - Adds tests for error paths and edge cases in `cmd/trix` and `pkg/crypt/std/pgp`.
This commit is contained in:
parent
18ac6b99bc
commit
16a346ca99
2 changed files with 25 additions and 0 deletions
|
|
@ -2,6 +2,7 @@ package main
|
|||
|
||||
import (
|
||||
"bytes"
|
||||
"errors"
|
||||
"io"
|
||||
"os"
|
||||
"strings"
|
||||
|
|
@ -32,6 +33,27 @@ func TestMain_Good(t *testing.T) {
|
|||
assert.Contains(t, buf.String(), "Usage:")
|
||||
}
|
||||
|
||||
func TestMain_Bad(t *testing.T) {
|
||||
oldExit := exit
|
||||
defer func() { exit = oldExit }()
|
||||
var exitCode int
|
||||
exit = func(code int) {
|
||||
exitCode = code
|
||||
}
|
||||
rootCmd.RunE = func(cmd *cobra.Command, args []string) error {
|
||||
return errors.New("test error")
|
||||
}
|
||||
// The rootCmd needs to be reset so that the test can be run again
|
||||
defer func() { rootCmd = &cobra.Command{
|
||||
Use: "trix",
|
||||
Short: "A tool for encoding and decoding .trix files",
|
||||
Long: `trix is a command-line tool for working with the .trix file format, which is used for storing encrypted data.`,
|
||||
}
|
||||
}()
|
||||
main()
|
||||
assert.Equal(t, 1, exitCode)
|
||||
}
|
||||
|
||||
func TestHandleSigil_Good(t *testing.T) {
|
||||
// Create a dummy command
|
||||
cmd := &cobra.Command{}
|
||||
|
|
|
|||
|
|
@ -64,6 +64,9 @@ func TestService_Decrypt_Bad(t *testing.T) {
|
|||
require.NoError(t, err)
|
||||
_, err = s.Decrypt(priv2, encrypted)
|
||||
assert.Error(t, err)
|
||||
|
||||
_, err = s.Decrypt(priv2, []byte("bad encrypted data"))
|
||||
assert.Error(t, err)
|
||||
}
|
||||
|
||||
func TestService_Sign_Good(t *testing.T) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue