summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorn1c00o <n@nc0.fr>2023-02-06 21:55:20 +0100
committerNicolas <34602094+n1c00o@users.noreply.github.com>2023-02-06 22:35:54 +0100
commit38db6a4a74ce289744073de909124b49dc625100 (patch)
treea905b0b669e9a1e80d3be15781545c8bec56038f
parent90f58a5db6742ac8b43fc3be76fb2cf78b96f6b4 (diff)
Add testclient
Allows testing the generator service
-rw-r--r--cmd/testclient/main.go49
1 files changed, 49 insertions, 0 deletions
diff --git a/cmd/testclient/main.go b/cmd/testclient/main.go
new file mode 100644
index 0000000..135cc3f
--- /dev/null
+++ b/cmd/testclient/main.go
@@ -0,0 +1,49 @@
+package main
+
+import (
+ "context"
+ "flag"
+ "fmt"
+
+ generatorpb "go.nc0.fr/clawflake/api/nc0/clawflake/generator/v3"
+
+ "go.uber.org/zap"
+ "google.golang.org/grpc"
+ "google.golang.org/grpc/credentials/insecure"
+)
+
+var (
+ serverAddr *string = flag.String("server", "localhost:5000", "Server URL")
+ amount *uint = flag.Uint("amount", 1, "Amount of ID numbers to generate.")
+)
+
+func main() {
+ flag.Parse()
+ logger, _ := zap.NewDevelopment()
+ l := logger.Named("testclient").With(zap.String("server_addr", *serverAddr), zap.Uint("amount", *amount))
+
+ conn, err := grpc.Dial(*serverAddr, grpc.WithTransportCredentials(insecure.NewCredentials()))
+ if err != nil {
+ l.Error("failed to connect to server", zap.Error(err))
+ return
+ }
+ defer conn.Close()
+
+ c := generatorpb.NewGeneratorServiceClient(conn)
+ l.Debug("created client")
+
+ fmt.Println(*amount)
+
+ ids, err := c.Generate(context.Background(), &generatorpb.GenerateRequest{
+ Amount: uint32(*amount),
+ })
+ if err != nil {
+ l.Error("failed to generate ID numbers", zap.Error(err))
+ return
+ }
+
+ l.Info("generated ID numbers")
+ for _, v := range ids.IdNumbers {
+ fmt.Println(v)
+ }
+}