Merged in feature/remove-query (pull request #201)
remove query from codebase part 1 * remove query * fix localstack run
This commit is contained in:
@@ -14,7 +14,6 @@ import (
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/oapi-codegen/runtime/types"
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
@@ -25,6 +24,8 @@ type Config struct {
|
||||
objectstore.ObjectStoreConfig
|
||||
}
|
||||
|
||||
// TestCollectorService tests the collector API endpoints.
|
||||
// Note: Query functionality has been removed. See remove_query_plan.md for details.
|
||||
func TestCollectorService(t *testing.T) {
|
||||
ctx := t.Context()
|
||||
|
||||
@@ -36,21 +37,6 @@ func TestCollectorService(t *testing.T) {
|
||||
client, err := queryapi.NewClientWithResponses(c.API.URI)
|
||||
require.NoError(t, err)
|
||||
|
||||
contextRes, err := client.CreateQueryWithResponse(ctx, queryapi.QueryCreate{
|
||||
Type: queryapi.CONTEXTFULL,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
|
||||
jsoncfg := "{\"path\":\"key\"}"
|
||||
jsonRes, err := client.CreateQueryWithResponse(ctx, queryapi.QueryCreate{
|
||||
Type: queryapi.JSONEXTRACTOR,
|
||||
Config: &jsoncfg,
|
||||
RequiredQueries: &[]types.UUID{
|
||||
contextRes.JSON201.Id,
|
||||
},
|
||||
})
|
||||
require.NoError(t, err)
|
||||
|
||||
clientRes, err := client.CreateClientWithResponse(ctx, queryapi.ClientCreate{
|
||||
Name: "example_name",
|
||||
Id: "ID",
|
||||
@@ -66,21 +52,13 @@ func TestCollectorService(t *testing.T) {
|
||||
assert.Equal(t, int32(0), collRes.JSON200.LatestVersion)
|
||||
assert.Equal(t, int64(0), collRes.JSON200.MinimumCleanerVersion)
|
||||
assert.Equal(t, int64(0), collRes.JSON200.MinimumTextVersion)
|
||||
assert.Len(t, collRes.JSON200.Fields, 0)
|
||||
|
||||
av := int32(1)
|
||||
fields := []queryapi.CollectorField{
|
||||
{
|
||||
Name: "json",
|
||||
QueryId: jsonRes.JSON201.Id,
|
||||
},
|
||||
}
|
||||
minVersion := int64(1000)
|
||||
uRes, err := client.SetCollectorByClientIdWithResponse(ctx, id, queryapi.CollectorSet{
|
||||
ActiveVersion: &av,
|
||||
MinimumCleanerVersion: &minVersion,
|
||||
MinimumTextVersion: &minVersion,
|
||||
Fields: &fields,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
test.AssertStatus(t, http.StatusOK, uRes.HTTPResponse)
|
||||
@@ -93,8 +71,6 @@ func TestCollectorService(t *testing.T) {
|
||||
assert.Equal(t, int32(1), collRes.JSON200.LatestVersion)
|
||||
assert.Equal(t, minVersion, collRes.JSON200.MinimumCleanerVersion)
|
||||
assert.Equal(t, minVersion, collRes.JSON200.MinimumTextVersion)
|
||||
assert.Len(t, collRes.JSON200.Fields, 1)
|
||||
assert.ElementsMatch(t, fields, collRes.JSON200.Fields)
|
||||
|
||||
test.AssertMessageBody(t, cfg, c.Dependencies.QueueURLs[test.ClientSyncRunnerName], regexp.MustCompile(`{"id":".+"}`))
|
||||
}
|
||||
|
||||
@@ -1,160 +0,0 @@
|
||||
package endtoend_test
|
||||
|
||||
import (
|
||||
"regexp"
|
||||
"testing"
|
||||
|
||||
"queryorchestration/internal/test"
|
||||
queryapi "queryorchestration/pkg/queryAPI"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/oapi-codegen/runtime/types"
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestQueryAPI(t *testing.T) {
|
||||
t.Run("list no queries", func(t *testing.T) {
|
||||
cfg := &Config{}
|
||||
|
||||
c, cleanup := test.CreateAPINetworkWithParams(t, cfg, test.QueryAPI, &test.FullDependenciesParams{
|
||||
NoObjectStore: true,
|
||||
Runners: &[]test.RunnerName{},
|
||||
})
|
||||
defer cleanup()
|
||||
|
||||
client, err := queryapi.NewClientWithResponses(c.API.URI)
|
||||
require.NoError(t, err)
|
||||
|
||||
queriesRes, err := client.ListQueriesWithResponse(t.Context())
|
||||
require.NoError(t, err)
|
||||
assert.Len(t, queriesRes.JSON200.Queries, 0)
|
||||
})
|
||||
t.Run("create and get query", func(t *testing.T) {
|
||||
ctx := t.Context()
|
||||
|
||||
cfg := &Config{}
|
||||
|
||||
c, cleanup := test.CreateAPINetworkWithParams(t, cfg, test.QueryAPI, &test.FullDependenciesParams{
|
||||
NoObjectStore: true,
|
||||
Runners: &[]test.RunnerName{},
|
||||
})
|
||||
defer cleanup()
|
||||
|
||||
client, err := queryapi.NewClientWithResponses(c.API.URI)
|
||||
require.NoError(t, err)
|
||||
|
||||
jcfg := `{"path": "createkey"}`
|
||||
idRes, err := client.CreateQueryWithResponse(ctx, queryapi.QueryCreate{
|
||||
Type: queryapi.JSONEXTRACTOR,
|
||||
Config: &jcfg,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
assert.NotNil(t, idRes)
|
||||
assert.NotNil(t, idRes.JSON201)
|
||||
jsonID := idRes.JSON201.Id
|
||||
|
||||
queryRes, err := client.GetQueryWithResponse(ctx, jsonID)
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, jsonID, queryRes.JSON200.Id)
|
||||
assert.Equal(t, queryapi.JSONEXTRACTOR, queryRes.JSON200.Type)
|
||||
assert.Equal(t, int32(1), queryRes.JSON200.ActiveVersion)
|
||||
assert.Equal(t, int32(1), queryRes.JSON200.LatestVersion)
|
||||
assert.Equal(t, jcfg, *queryRes.JSON200.Config)
|
||||
assert.Nil(t, queryRes.JSON200.RequiredQueries)
|
||||
|
||||
queriesRes, err := client.ListQueriesWithResponse(ctx)
|
||||
require.NoError(t, err)
|
||||
assert.Len(t, queriesRes.JSON200.Queries, 1)
|
||||
assert.Equal(t, jcfg, *queriesRes.JSON200.Queries[0].Config)
|
||||
})
|
||||
t.Run("update query", func(t *testing.T) {
|
||||
ctx := t.Context()
|
||||
|
||||
cfg := &Config{}
|
||||
|
||||
c, cleanup := test.CreateAPINetworkWithParams(t, cfg, test.QueryAPI, &test.FullDependenciesParams{
|
||||
NoObjectStore: true,
|
||||
Runners: &[]test.RunnerName{test.QueryVersionSyncRunnerName},
|
||||
})
|
||||
defer cleanup()
|
||||
|
||||
client, err := queryapi.NewClientWithResponses(c.API.URI)
|
||||
require.NoError(t, err)
|
||||
|
||||
jcfg := "{}"
|
||||
idRes, err := client.CreateQueryWithResponse(ctx, queryapi.QueryCreate{
|
||||
Type: queryapi.JSONEXTRACTOR,
|
||||
Config: &jcfg,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
assert.NotNil(t, idRes)
|
||||
assert.NotNil(t, idRes.JSON201)
|
||||
jsonID := idRes.JSON201.Id
|
||||
|
||||
aV := int32(2)
|
||||
newJcfg := `{"path": "keyone"}`
|
||||
res, err := client.UpdateQueryWithResponse(ctx, jsonID, queryapi.QueryUpdate{
|
||||
ActiveVersion: &aV,
|
||||
Config: &newJcfg,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
assert.NotNil(t, res)
|
||||
|
||||
test.AssertMessageBody(t, cfg, c.Dependencies.QueueURLs[test.QueryVersionSyncRunnerName], regexp.MustCompile(`{"id":".+"}`))
|
||||
|
||||
queryRes, err := client.GetQueryWithResponse(ctx, jsonID)
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, jsonID, queryRes.JSON200.Id)
|
||||
assert.Equal(t, queryapi.JSONEXTRACTOR, queryRes.JSON200.Type)
|
||||
assert.Equal(t, int32(2), queryRes.JSON200.ActiveVersion)
|
||||
assert.Equal(t, int32(2), queryRes.JSON200.LatestVersion)
|
||||
assert.Equal(t, newJcfg, *queryRes.JSON200.Config)
|
||||
assert.Nil(t, queryRes.JSON200.RequiredQueries)
|
||||
})
|
||||
t.Run("multiple dependent queries", func(t *testing.T) {
|
||||
ctx := t.Context()
|
||||
|
||||
cfg := &Config{}
|
||||
|
||||
c, cleanup := test.CreateAPINetworkWithParams(t, cfg, test.QueryAPI, &test.FullDependenciesParams{
|
||||
NoObjectStore: true,
|
||||
Runners: &[]test.RunnerName{},
|
||||
})
|
||||
defer cleanup()
|
||||
|
||||
client, err := queryapi.NewClientWithResponses(c.API.URI)
|
||||
require.NoError(t, err)
|
||||
|
||||
idRes, err := client.CreateQueryWithResponse(ctx, queryapi.QueryCreate{
|
||||
Type: queryapi.CONTEXTFULL,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
assert.NotNil(t, idRes)
|
||||
assert.NotNil(t, idRes.JSON201)
|
||||
contextID := idRes.JSON201.Id
|
||||
assert.NotEmpty(t, contextID)
|
||||
|
||||
jcfg := "{}"
|
||||
idRes, err = client.CreateQueryWithResponse(ctx, queryapi.QueryCreate{
|
||||
Type: queryapi.JSONEXTRACTOR,
|
||||
Config: &jcfg,
|
||||
RequiredQueries: &[]types.UUID{
|
||||
contextID,
|
||||
},
|
||||
})
|
||||
require.NoError(t, err)
|
||||
assert.NotNil(t, idRes)
|
||||
assert.NotNil(t, idRes.JSON201)
|
||||
jsonID := idRes.JSON201.Id
|
||||
|
||||
queryRes, err := client.GetQueryWithResponse(ctx, jsonID)
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, jsonID, queryRes.JSON200.Id)
|
||||
assert.Equal(t, queryapi.JSONEXTRACTOR, queryRes.JSON200.Type)
|
||||
assert.Equal(t, int32(1), queryRes.JSON200.ActiveVersion)
|
||||
assert.Equal(t, int32(1), queryRes.JSON200.LatestVersion)
|
||||
assert.Equal(t, jcfg, *queryRes.JSON200.Config)
|
||||
assert.ElementsMatch(t, []types.UUID{contextID}, *queryRes.JSON200.RequiredQueries)
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user