Merged in feature/jobsynced (pull request #72)

Job Status Get and DB tidy up

* initalquery

* tests

* shorttests

* testing queries

* job

* solvedthequery

* updatingdb

* fixingtests

* repotests

* shorttests

* docker

* testspassed
This commit is contained in:
Michael McGuinness
2025-02-20 19:02:44 +00:00
parent 0ea544926b
commit 3d434eedb8
74 changed files with 2395 additions and 1335 deletions
+95 -82
View File
@@ -152,13 +152,6 @@ func TestQueries(t *testing.T) {
})
assert.NoError(t, err)
err = queries.SetQueryConfig(ctx, &repository.SetQueryConfigParams{
Queryid: jsonQueryID,
Config: []byte(`{"second":"key"}`),
Addedversion: 2,
})
assert.NoError(t, err)
err = queries.SetQueryConfig(ctx, &repository.SetQueryConfigParams{
Queryid: jsonQueryID,
Config: jsonConfig,
@@ -166,29 +159,40 @@ func TestQueries(t *testing.T) {
})
assert.NoError(t, err)
jsonQueryConfig, err := queries.GetQueryConfig(ctx, &repository.GetQueryConfigParams{
Queryid: jsonQueryID,
Addedversion: jsonQuery.Activeversion,
})
jsonQueryConfig, err := queries.GetActiveQueryConfig(ctx, jsonQueryID)
assert.NoError(t, err)
assert.Equal(t, jsonConfig, jsonQueryConfig.Config)
assert.Equal(t, jsonConfig, jsonQueryConfig)
jsonQueryConfig, err = queries.GetQueryConfig(ctx, &repository.GetQueryConfigParams{
err = queries.SetQueryConfig(ctx, &repository.SetQueryConfigParams{
Queryid: jsonQueryID,
Config: []byte(`{"second":"key"}`),
Addedversion: 2,
})
assert.NoError(t, err)
assert.Equal(t, []byte(`{"second": "key"}`), jsonQueryConfig.Config)
jsonQueryConfig, err = queries.GetActiveQueryConfig(ctx, jsonQueryID)
assert.NoError(t, err)
assert.Equal(t, jsonConfig, jsonQueryConfig)
err = queries.AddActiveQueryVersion(ctx, &repository.AddActiveQueryVersionParams{
Queryid: jsonQueryID,
Versionid: 2,
})
assert.NoError(t, err)
jsonQueryConfig, err = queries.GetActiveQueryConfig(ctx, jsonQueryID)
assert.NoError(t, err)
assert.Equal(t, []byte(`{"second": "key"}`), jsonQueryConfig)
jsonQuery, err = queries.GetQuery(ctx, jsonQueryID)
assert.NoError(t, err)
assert.EqualExportedValues(t, &repository.Fullactivequery{
ID: jsonQueryID,
Type: repository.QuerytypeJsonExtractor,
Activeversion: 1,
Activeversion: 2,
Latestversion: 2,
Config: jsonConfig,
Requiredids: []pgtype.UUID{contextQueryID},
Config: jsonQueryConfig,
Requiredids: []pgtype.UUID{},
}, jsonQuery)
v := int32(1)
@@ -200,7 +204,7 @@ func TestQueries(t *testing.T) {
assert.EqualExportedValues(t, &repository.GetQueryWithVersionRow{
ID: jsonQueryID,
Type: repository.QuerytypeJsonExtractor,
Activeversion: 1,
Activeversion: 2,
Latestversion: 2,
Config: jsonConfig,
Requiredids: []pgtype.UUID{contextQueryID},
@@ -248,13 +252,11 @@ func TestQueryDependencyTree(t *testing.T) {
assert.NoError(t, err)
jobID, err := queries.CreateJob(ctx, clientID)
assert.NoError(t, err)
collID, err := queries.CreateCollector(ctx, jobID)
assert.NoError(t, err)
_, err = queries.AddLatestCollectorVersion(ctx, collID)
version, err := queries.AddLatestCollectorVersion(ctx, jobID)
assert.NoError(t, err)
err = queries.SetActiveCollectorVersion(ctx, &repository.SetActiveCollectorVersionParams{
Collectorid: collID,
Versionid: 1,
Jobid: jobID,
Versionid: version,
})
assert.NoError(t, err)
docID, err := queries.CreateDocument(ctx, &repository.CreateDocumentParams{
@@ -265,10 +267,17 @@ func TestQueryDependencyTree(t *testing.T) {
contextQueryID, err := queries.CreateQuery(ctx, repository.Querytype(repository.QuerytypeContextFull))
assert.NoError(t, err)
_, err = queries.AddLatestQueryVersion(ctx, contextQueryID)
assert.NoError(t, err)
err = queries.AddActiveQueryVersion(ctx, &repository.AddActiveQueryVersionParams{
Queryid: contextQueryID,
Versionid: 1,
})
assert.NoError(t, err)
dependents, err := queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: contextQueryID,
Documentid: docID,
Queryid: contextQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{}, dependents)
@@ -277,10 +286,15 @@ func TestQueryDependencyTree(t *testing.T) {
assert.NoError(t, err)
_, err = queries.AddLatestQueryVersion(ctx, jsonQueryID)
assert.NoError(t, err)
err = queries.AddActiveQueryVersion(ctx, &repository.AddActiveQueryVersionParams{
Queryid: jsonQueryID,
Versionid: 1,
})
assert.NoError(t, err)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: jsonQueryID,
Documentid: docID,
Queryid: jsonQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{}, dependents)
@@ -293,20 +307,20 @@ func TestQueryDependencyTree(t *testing.T) {
assert.NoError(t, err)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: jsonQueryID,
Documentid: docID,
Queryid: jsonQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{}, dependents)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: contextQueryID,
Documentid: docID,
Queryid: contextQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{}, dependents)
err = queries.AddCollectorQuery(ctx, &repository.AddCollectorQueryParams{
Collectorid: collID,
Jobid: jobID,
Name: "example_name'",
Queryid: jsonQueryID,
Addedversion: 1,
@@ -314,14 +328,14 @@ func TestQueryDependencyTree(t *testing.T) {
assert.NoError(t, err)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: jsonQueryID,
Documentid: docID,
Queryid: jsonQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{}, dependents)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: contextQueryID,
Documentid: docID,
Queryid: contextQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{jsonQueryID}, dependents)
@@ -330,16 +344,21 @@ func TestQueryDependencyTree(t *testing.T) {
assert.NoError(t, err)
_, err = queries.AddLatestQueryVersion(ctx, secondJsonQueryID)
assert.NoError(t, err)
err = queries.AddActiveQueryVersion(ctx, &repository.AddActiveQueryVersionParams{
Queryid: secondJsonQueryID,
Versionid: 1,
})
assert.NoError(t, err)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: jsonQueryID,
Documentid: docID,
Queryid: jsonQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{}, dependents)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: contextQueryID,
Documentid: docID,
Queryid: contextQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{jsonQueryID}, dependents)
@@ -352,26 +371,26 @@ func TestQueryDependencyTree(t *testing.T) {
assert.NoError(t, err)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: secondJsonQueryID,
Documentid: docID,
Queryid: secondJsonQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{}, dependents)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: jsonQueryID,
Documentid: docID,
Queryid: jsonQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{}, dependents)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: contextQueryID,
Documentid: docID,
Queryid: contextQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{jsonQueryID}, dependents)
err = queries.AddCollectorQuery(ctx, &repository.AddCollectorQueryParams{
Collectorid: collID,
Jobid: jobID,
Name: "example_name'",
Queryid: secondJsonQueryID,
Addedversion: 1,
@@ -379,55 +398,55 @@ func TestQueryDependencyTree(t *testing.T) {
assert.NoError(t, err)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: secondJsonQueryID,
Documentid: docID,
Queryid: secondJsonQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{}, dependents)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: jsonQueryID,
Documentid: docID,
Queryid: jsonQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{secondJsonQueryID}, dependents)
dependents, err = queries.ListQueryDirectDependentsByDocumentID(ctx, &repository.ListQueryDirectDependentsByDocumentIDParams{
ID: docID,
Requiredids: contextQueryID,
Documentid: docID,
Queryid: contextQueryID,
})
assert.NoError(t, err)
assert.ElementsMatch(t, []pgtype.UUID{jsonQueryID}, dependents)
isdependent, err := queries.IsQueryInDependencyTree(ctx, &repository.IsQueryInDependencyTreeParams{
Requiredqueryid: jsonQueryID,
ID: []pgtype.UUID{contextQueryID},
Queryid: jsonQueryID,
Requiredqueryids: []pgtype.UUID{contextQueryID},
})
assert.NoError(t, err)
assert.False(t, isdependent)
isdependent, err = queries.IsQueryInDependencyTree(ctx, &repository.IsQueryInDependencyTreeParams{
Requiredqueryid: jsonQueryID,
ID: []pgtype.UUID{secondJsonQueryID},
Queryid: jsonQueryID,
Requiredqueryids: []pgtype.UUID{secondJsonQueryID},
})
assert.NoError(t, err)
assert.True(t, isdependent)
isdependent, err = queries.IsQueryInDependencyTree(ctx, &repository.IsQueryInDependencyTreeParams{
Requiredqueryid: jsonQueryID,
ID: []pgtype.UUID{jsonQueryID},
Queryid: jsonQueryID,
Requiredqueryids: []pgtype.UUID{jsonQueryID},
})
assert.NoError(t, err)
assert.True(t, isdependent)
isdependent, err = queries.IsQueryInDependencyTree(ctx, &repository.IsQueryInDependencyTreeParams{
Requiredqueryid: secondJsonQueryID,
ID: []pgtype.UUID{jsonQueryID, contextQueryID},
Queryid: secondJsonQueryID,
Requiredqueryids: []pgtype.UUID{jsonQueryID, contextQueryID},
})
assert.NoError(t, err)
assert.False(t, isdependent)
isdependent, err = queries.IsQueryInDependencyTree(ctx, &repository.IsQueryInDependencyTreeParams{
Requiredqueryid: contextQueryID,
ID: []pgtype.UUID{jsonQueryID, secondJsonQueryID},
Queryid: contextQueryID,
Requiredqueryids: []pgtype.UUID{jsonQueryID, secondJsonQueryID},
})
assert.NoError(t, err)
assert.True(t, isdependent)
@@ -521,17 +540,15 @@ func TestListQueryJobs(t *testing.T) {
assert.NoError(t, err)
jobOneID, err := queries.CreateJob(ctx, clientOneID)
assert.NoError(t, err)
collOneID, err := queries.CreateCollector(ctx, jobOneID)
assert.NoError(t, err)
_, err = queries.AddLatestCollectorVersion(ctx, collOneID)
versionOne, err := queries.AddLatestCollectorVersion(ctx, jobOneID)
assert.NoError(t, err)
err = queries.SetActiveCollectorVersion(ctx, &repository.SetActiveCollectorVersionParams{
Collectorid: collOneID,
Versionid: 1,
Jobid: jobOneID,
Versionid: versionOne,
})
assert.NoError(t, err)
err = queries.AddCollectorQuery(ctx, &repository.AddCollectorQueryParams{
Collectorid: collOneID,
Jobid: jobOneID,
Queryid: contextID,
Addedversion: 1,
Name: "example_key",
@@ -544,17 +561,15 @@ func TestListQueryJobs(t *testing.T) {
jobTwoID, err := queries.CreateJob(ctx, clientOneID)
assert.NoError(t, err)
collTwoID, err := queries.CreateCollector(ctx, jobTwoID)
assert.NoError(t, err)
_, err = queries.AddLatestCollectorVersion(ctx, collTwoID)
versionTwo, err := queries.AddLatestCollectorVersion(ctx, jobTwoID)
assert.NoError(t, err)
err = queries.SetActiveCollectorVersion(ctx, &repository.SetActiveCollectorVersionParams{
Collectorid: collTwoID,
Versionid: 1,
Jobid: jobTwoID,
Versionid: versionTwo,
})
assert.NoError(t, err)
err = queries.AddCollectorQuery(ctx, &repository.AddCollectorQueryParams{
Collectorid: collTwoID,
Jobid: jobTwoID,
Queryid: contextID,
Addedversion: 1,
Name: "example_key",
@@ -569,17 +584,15 @@ func TestListQueryJobs(t *testing.T) {
assert.NoError(t, err)
jobThreeID, err := queries.CreateJob(ctx, clientTwoID)
assert.NoError(t, err)
collThreeID, err := queries.CreateCollector(ctx, jobThreeID)
assert.NoError(t, err)
_, err = queries.AddLatestCollectorVersion(ctx, collThreeID)
versionThree, err := queries.AddLatestCollectorVersion(ctx, jobThreeID)
assert.NoError(t, err)
err = queries.SetActiveCollectorVersion(ctx, &repository.SetActiveCollectorVersionParams{
Collectorid: collThreeID,
Versionid: 1,
Jobid: jobThreeID,
Versionid: versionThree,
})
assert.NoError(t, err)
err = queries.AddCollectorQuery(ctx, &repository.AddCollectorQueryParams{
Collectorid: collThreeID,
Jobid: jobThreeID,
Queryid: contextID,
Addedversion: 1,
Name: "example_key",
@@ -601,7 +614,7 @@ func TestListQueryJobs(t *testing.T) {
})
assert.NoError(t, err)
err = queries.AddCollectorQuery(ctx, &repository.AddCollectorQueryParams{
Collectorid: collOneID,
Jobid: jobOneID,
Queryid: jsonID,
Addedversion: 1,
Name: "example_key",