diff --git a/main.go b/main.go index 6760c7fe22d5f9dafc796f9c3bf8d065d0bca32e..7d90209c472943ad2c7d96a7eba4765f90b2e661 100644 --- a/main.go +++ b/main.go @@ -21,6 +21,7 @@ package main import ( + "flag" "log" ) @@ -29,4 +30,12 @@ import ( */ func main() { log.Println("Hello world") + + // Read command line argument for buildingId + buildingIdPointer := flag.Int64("building", 0, "set building ID") + flag.Parse() + + // Initiate variables + buildingId := *buildingIdPointer + log.Println("buildingId: ", buildingId) } diff --git a/main_test.go b/main_test.go index da25992beb289f08b9a64f71859a5238056a5409..b5b407610552f86ddf8e76b5c96dc07098f06478 100644 --- a/main_test.go +++ b/main_test.go @@ -21,12 +21,32 @@ package main import ( + "bytes" + "flag" "testing" ) -func TestMain(t *testing.T) { +type Config struct { + building int64 + args []string +} + +func parseFlags(t *testing.T) { err := error(nil) if err != nil { t.Fatal(err) } + + flags := flag.NewFlagSet("rcli", flag.ContinueOnError) + var buf bytes.Buffer + flags.SetOutput(&buf) + + var stringArray = [2]string + + var conf Config + flags.Int64Var(&conf.building, "building", 1, "set building ID") + err = flags.Parse() + if err != nil { + return nil, buf.String(), err + } }