Merged in bugfix/toomanythreads (pull request #136)

Too Many Threads

* dropthreads

* assertstatus

* assertstatus
This commit is contained in:
Michael McGuinness
2025-05-06 13:49:49 +00:00
parent ee776d2681
commit e84454b46f
7 changed files with 88 additions and 25 deletions
+11
View File
@@ -3,12 +3,15 @@ package test
import (
"context"
"fmt"
"io"
"net/http"
"testing"
queryapi "queryorchestration/api/queryAPI"
"queryorchestration/internal/serviceconfig"
"github.com/docker/go-connections/nat"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
@@ -64,3 +67,11 @@ var QueryAPI = API{
var apis = []API{
QueryAPI,
}
func AssertStatus(t testing.TB, statusCode int, response *http.Response) {
if !assert.Equal(t, statusCode, response.StatusCode) && response.Body != nil {
response, err := io.ReadAll(response.Body)
require.NoError(t, err)
t.Log("response: ", string(response))
}
}
+37
View File
@@ -0,0 +1,37 @@
package test_test
import (
"io"
"net/http"
"strings"
"testing"
"queryorchestration/internal/test"
"github.com/stretchr/testify/assert"
)
func TestAssertStatus(t *testing.T) {
t.Run("pass", func(t *testing.T) {
mockT := &testing.T{}
test.AssertStatus(mockT, http.StatusOK, &http.Response{
StatusCode: 200,
})
assert.False(t, mockT.Failed())
})
t.Run("fail with nil body", func(t *testing.T) {
mockT := &testing.T{}
test.AssertStatus(mockT, http.StatusOK, &http.Response{
StatusCode: 500,
})
assert.True(t, mockT.Failed())
})
t.Run("fail with body", func(t *testing.T) {
mockT := &testing.T{}
test.AssertStatus(mockT, http.StatusOK, &http.Response{
StatusCode: 500,
Body: io.NopCloser(strings.NewReader("my body")),
})
assert.True(t, mockT.Failed())
})
}
+3 -2
View File
@@ -8,6 +8,7 @@ import (
"testing"
"time"
"queryorchestration/internal/test"
queryapi "queryorchestration/pkg/queryAPI"
"github.com/google/uuid"
@@ -84,7 +85,7 @@ func CreateDependentQueries(t testing.TB, client *queryapi.ClientWithResponses)
Type: queryapi.CONTEXTFULL,
})
require.NoError(t, err)
require.Equal(t, http.StatusCreated, contextQueryRes.StatusCode())
test.AssertStatus(t, http.StatusCreated, contextQueryRes.HTTPResponse)
jcfg := `{"path":"keyone"}`
jsonQueryRes, err := client.CreateQueryWithResponse(t.Context(), queryapi.QueryCreate{
Type: queryapi.JSONEXTRACTOR,
@@ -92,7 +93,7 @@ func CreateDependentQueries(t testing.TB, client *queryapi.ClientWithResponses)
RequiredQueries: &[]types.UUID{contextQueryRes.JSON201.Id},
})
require.NoError(t, err)
require.Equal(t, http.StatusCreated, jsonQueryRes.StatusCode())
test.AssertStatus(t, http.StatusCreated, jsonQueryRes.HTTPResponse)
return contextQueryRes.JSON201.Id, jsonQueryRes.JSON201.Id
}