diff --git a/app/cli/main.go b/app/cli/main.go index 3608968..b3368dd 100644 --- a/app/cli/main.go +++ b/app/cli/main.go @@ -337,17 +337,27 @@ func main() { fmt.Printf("Sending message: %v\n", i) err := app.Peer.SendMessageToGroup(commands[1], fmt.Sprintf("this is message %v", i)) if err != nil { - fmt.Printf("could not send message %v because %v", i, err) + fmt.Printf("could not send message %v because %v\n", i, err) } } fmt.Printf("Waiting 5 seconds for message to process...\n") time.Sleep(time.Second * 5) timeline := group.GetTimeline() + totalLatency := time.Duration(0) + maxLatency := time.Duration(0) + totalMessages := 0 for i := 0; i < 100; i++ { found := false for _, m := range timeline.Messages { - if m.Message == fmt.Sprintf("this is message %v", i) { + if m.Message == fmt.Sprintf("this is message %v", i) && m.PeerID == app.Peer.Profile.Onion { found = true + latency := m.Received.Sub(m.Timestamp) + fmt.Printf("Latency for Message %v was %v\n", i, latency) + totalLatency = totalLatency + latency + if maxLatency < latency { + maxLatency = latency + } + totalMessages += 1 } } @@ -355,6 +365,10 @@ func main() { fmt.Printf("message %v was never received\n", i) } } + + fmt.Printf("Average Latency for %v messages was: %vms\n", totalMessages, time.Duration(int64(totalLatency)/int64(totalMessages))) + fmt.Printf("Max Latency for %v messages was: %vms\n", totalMessages, maxLatency) + } } }