From 003975841b4886b4559411d3122fe7587c195657 Mon Sep 17 00:00:00 2001 From: Przemek Delewski Date: Thu, 29 Dec 2022 14:40:39 +0100 Subject: [PATCH] extract checkargs --- instrgen/driver/driver_test.go | 8 ++++++++ instrgen/driver/main.go | 16 ++++++++++++---- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/instrgen/driver/driver_test.go b/instrgen/driver/driver_test.go index 37572cae290..1cb0bb2ecb2 100644 --- a/instrgen/driver/driver_test.go +++ b/instrgen/driver/driver_test.go @@ -96,6 +96,14 @@ func TestCommands(t *testing.T) { require.NoError(t, err) } +func TestArgs(t *testing.T) { + err := checkArgs(nil) + require.Error(t, err) + args := []string{"driver", "--inject", "", "./..."} + err = checkArgs(args) + require.NoError(t, err) +} + func TestUnknown(t *testing.T) { err := executeCommand("unknown", "a", "b") require.Error(t, err) diff --git a/instrgen/driver/main.go b/instrgen/driver/main.go index bbb85b452b0..b9844c8a148 100644 --- a/instrgen/driver/main.go +++ b/instrgen/driver/main.go @@ -129,13 +129,21 @@ func executeCommand(command string, projectPath string, packagePattern string) e return errors.New("unknown command") } +func checkArgs(args []string) error { + if len(args) != 4 { + _ = usage() + return errors.New("wrong arguments") + } + return nil +} + func main() { fmt.Println("autotel compiler") - if len(os.Args) != 4 { - _ = usage() - os.Exit(-1) + err := checkArgs(os.Args) + if err != nil { + return } - err := executeCommand(os.Args[1], os.Args[2], os.Args[3]) + err = executeCommand(os.Args[1], os.Args[2], os.Args[3]) if err != nil { log.Fatal(err) }