mirror of
https://github.com/shadow1ng/fscan.git
synced 2026-09-22 03:10:42 +08:00
40 lines
981 B
Go
40 lines
981 B
Go
package common
|
|
|
|
import (
|
|
"reflect"
|
|
"testing"
|
|
)
|
|
|
|
func TestNormalizeMultiValueFlagArgs(t *testing.T) {
|
|
tests := []struct {
|
|
name string
|
|
args []string
|
|
want []string
|
|
}{
|
|
{
|
|
name: "space separated pwda values",
|
|
args: []string{"-h", "192.168.1.1", "-pwda", "pass1", "pass2", "pass3", "-m", "ssh"},
|
|
want: []string{"-h", "192.168.1.1", "-pwda", "pass1,pass2,pass3", "-m", "ssh"},
|
|
},
|
|
{
|
|
name: "equals form with extra values",
|
|
args: []string{"-pwda=pass1", "pass2", "-h", "192.168.1.1"},
|
|
want: []string{"-pwda=pass1,pass2", "-h", "192.168.1.1"},
|
|
},
|
|
{
|
|
name: "unrelated args unchanged",
|
|
args: []string{"-h", "192.168.1.1", "-m", "ssh"},
|
|
want: []string{"-h", "192.168.1.1", "-m", "ssh"},
|
|
},
|
|
}
|
|
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
got := normalizeMultiValueFlagArgs(tt.args, "-pwda")
|
|
if !reflect.DeepEqual(got, tt.want) {
|
|
t.Fatalf("normalizeMultiValueFlagArgs() = %#v, want %#v", got, tt.want)
|
|
}
|
|
})
|
|
}
|
|
}
|