From e2d8bd91296d4e0ce0a3cc5c6e71e6ca4e55697e Mon Sep 17 00:00:00 2001 From: Paulin Todev Date: Tue, 1 Aug 2023 12:10:07 +0100 Subject: [PATCH] Try an http request periodically --- .../app_agent_receiver_test.go | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/pkg/integrations/v2/app_agent_receiver/app_agent_receiver_test.go b/pkg/integrations/v2/app_agent_receiver/app_agent_receiver_test.go index baacc46a93ec..46cfba937093 100644 --- a/pkg/integrations/v2/app_agent_receiver/app_agent_receiver_test.go +++ b/pkg/integrations/v2/app_agent_receiver/app_agent_receiver_test.go @@ -17,6 +17,7 @@ import ( "github.com/grafana/agent/pkg/util" "github.com/phayes/freeport" "github.com/prometheus/client_golang/prometheus" + "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "go.opentelemetry.io/collector/pdata/ptrace" "gopkg.in/yaml.v2" @@ -136,20 +137,24 @@ traces_instance: TEST_TRACES ` integrationURL := fmt.Sprintf("http://127.0.0.1:%d/collect", integrationPort) - req, err := http.NewRequest("POST", integrationURL, bytes.NewBuffer([]byte(PAYLOAD))) - require.NoError(t, err) - res, err := http.DefaultClient.Do(req) - require.NoError(t, err) + var httpResponse *http.Response + require.EventuallyWithT(t, func(c *assert.CollectT) { + req, err := http.NewRequest("POST", integrationURL, bytes.NewBuffer([]byte(PAYLOAD))) + assert.NoError(c, err) + + httpResponse, err = http.DefaultClient.Do(req) + assert.NoError(c, err) + }, 5*time.Second, 250*time.Millisecond) // // Check that the data was received by the integration // - resBody, err := io.ReadAll(res.Body) + resBody, err := io.ReadAll(httpResponse.Body) require.NoError(t, err) require.Equal(t, "ok", string(resBody[:])) - require.Equal(t, http.StatusAccepted, res.StatusCode) + require.Equal(t, http.StatusAccepted, httpResponse.StatusCode) // // Check that the traces subsystem remote wrote the integration