Files
keyhunter/cmd/scan_test.go

36 lines
1.2 KiB
Go

package cmd
import (
"testing"
"time"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
// TestScan_VerifyFlags_Registered asserts that the --verify-timeout and
// --verify-workers flags are wired onto scanCmd with their documented defaults.
// This is the lightweight acceptance gate for Plan 05-05 Task 1.
func TestScan_VerifyFlags_Registered(t *testing.T) {
t.Run("verify-timeout flag exists with 10s default", func(t *testing.T) {
f := scanCmd.Flags().Lookup("verify-timeout")
require.NotNil(t, f, "--verify-timeout must be registered on scanCmd")
assert.Equal(t, "10s", f.DefValue, "default should be 10s")
// Sanity: default value is parseable as a duration
d, err := time.ParseDuration(f.DefValue)
require.NoError(t, err)
assert.Equal(t, 10*time.Second, d)
})
t.Run("verify-workers flag exists with default 10", func(t *testing.T) {
f := scanCmd.Flags().Lookup("verify-workers")
require.NotNil(t, f, "--verify-workers must be registered on scanCmd")
assert.Equal(t, "10", f.DefValue, "default should be 10")
})
t.Run("verify flag still present", func(t *testing.T) {
f := scanCmd.Flags().Lookup("verify")
require.NotNil(t, f)
})
}