From 6dc8f6757093dd53181de86379343c9ebe3048f6 Mon Sep 17 00:00:00 2001 From: Erik Brakkee Date: Tue, 20 Aug 2024 12:20:12 +0200 Subject: [PATCH] bidirectional communication now tested. --- pkg/comms/agentserver_test.go | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/pkg/comms/agentserver_test.go b/pkg/comms/agentserver_test.go index 8fc75a1..316f4a4 100644 --- a/pkg/comms/agentserver_test.go +++ b/pkg/comms/agentserver_test.go @@ -100,25 +100,39 @@ func (s *AgentServerTestSuite) TestNewCommChannel() { func (s *AgentServerTestSuite) Test_ConnectThroughYamux() { agentCommChannel, serverCommChannel := s.createCommChannel() - data := "hello" + dataAgentToServer := "hello" + dataServerToAgent := "bye" testsupport.RunAndWait( &s.Suite, func() any { conn, err := agentCommChannel.Session.OpenStream() s.Nil(err) - n, err := conn.Write([]byte(data)) + n, err := conn.Write([]byte(dataAgentToServer)) s.Nil(err) - s.Equal(len(data), n) + s.Equal(len(dataAgentToServer), n) + + buf := make([]byte, len(dataServerToAgent)) + n, err = conn.Read(buf) + s.Nil(err) + s.Equal(len(dataServerToAgent), n) + s.Equal([]byte(dataServerToAgent), buf[:n]) + return nil }, func() any { conn, err := serverCommChannel.Session.Accept() + s.Nil(err) - buf := make([]byte, len(data)) + buf := make([]byte, len(dataAgentToServer)) n, err := conn.Read(buf) s.Nil(err) - s.Equal(len(data), n) - s.Equal([]byte(data), buf[:n]) + s.Equal(len(dataAgentToServer), n) + s.Equal([]byte(dataAgentToServer), buf[:n]) + + n, err = conn.Write([]byte(dataServerToAgent)) + s.Nil(err) + s.Equal(len(dataServerToAgent), n) + return nil }) }