Merged in feature/jobcollector (pull request #30)
Initial Job Collector (changes pending) * movearroundtocleancollector * internalgetfunctions * completecollectorquery * simplify * fixtests * addvendor * noplaceholder
This commit is contained in:
@@ -33,7 +33,7 @@ func (c *Queue) getCollectorQueries(ctx context.Context) error {
|
||||
|
||||
id := database.MustToDBUUID(c.collector.ID)
|
||||
|
||||
queries, err := c.db.Queries.GetCollectorQueries(ctx, id)
|
||||
queries, err := c.db.Queries.ListCollectorQueries(ctx, id)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -71,13 +71,13 @@ func TestGetCollectorQueries(t *testing.T) {
|
||||
if q.RequiredQueryIDs != nil {
|
||||
dbReqIDs = database.MustToDBUUIDArray(*q.RequiredQueryIDs)
|
||||
}
|
||||
ty, err := queryprocessor.ToDBNullQueryType(q.Type)
|
||||
ty, err := queryprocessor.ToDBQueryType(q.Type)
|
||||
assert.Nil(t, err)
|
||||
rows = rows.
|
||||
AddRow(dbCollectorID, dbID, ty, &q.Version, dbReqIDs)
|
||||
AddRow(dbCollectorID, dbID, ty, q.Version, dbReqIDs)
|
||||
}
|
||||
|
||||
pool.ExpectQuery("name: GetCollectorQueries :many").WithArgs(dbCollectorID).WillReturnRows(rows)
|
||||
pool.ExpectQuery("name: ListCollectorQueries :many").WithArgs(dbCollectorID).WillReturnRows(rows)
|
||||
|
||||
err = svc.getCollectorQueries(ctx)
|
||||
assert.Nil(t, err)
|
||||
|
||||
@@ -29,19 +29,10 @@ func TestExecute(t *testing.T) {
|
||||
Queries: queries,
|
||||
Pool: pool,
|
||||
}
|
||||
jobID := uuid.New()
|
||||
dbJobID := database.MustToDBUUID(jobID)
|
||||
collectorID := uuid.New()
|
||||
dbCollectorID := database.MustToDBUUID(collectorID)
|
||||
|
||||
pool.ExpectQuery("name: GetCollectorFromJobID :one").WithArgs(dbJobID).
|
||||
WillReturnRows(
|
||||
pgxmock.NewRows([]string{"id", "jobId", "minCleanVersion", "minTextVersion"}).
|
||||
AddRow(dbCollectorID, dbJobID, int32(1), int32(1)),
|
||||
)
|
||||
|
||||
coll, err := collector.NewByJobId(ctx, db, jobID)
|
||||
assert.Nil(t, err)
|
||||
coll := collector.Collector{
|
||||
ID: uuid.New(),
|
||||
}
|
||||
dbCollectorID := database.MustToDBUUID(coll.ID)
|
||||
|
||||
queryOneID := uuid.New()
|
||||
queryOneVersion := int32(1)
|
||||
@@ -74,13 +65,13 @@ func TestExecute(t *testing.T) {
|
||||
if q.RequiredQueryIDs != nil {
|
||||
dbReqIDs = database.MustToDBUUIDArray(*q.RequiredQueryIDs)
|
||||
}
|
||||
ty, err := queryprocessor.ToDBNullQueryType(q.Type)
|
||||
ty, err := queryprocessor.ToDBQueryType(q.Type)
|
||||
assert.Nil(t, err)
|
||||
rows = rows.
|
||||
AddRow(dbCollectorID, dbID, ty, &q.Version, dbReqIDs)
|
||||
AddRow(dbCollectorID, dbID, ty, q.Version, dbReqIDs)
|
||||
}
|
||||
|
||||
pool.ExpectQuery("name: GetCollectorQueries :many").WithArgs(dbCollectorID).WillReturnRows(rows)
|
||||
pool.ExpectQuery("name: ListCollectorQueries :many").WithArgs(dbCollectorID).WillReturnRows(rows)
|
||||
|
||||
contextResultID := uuid.New()
|
||||
results := []*result.Result{
|
||||
@@ -102,7 +93,9 @@ func TestExecute(t *testing.T) {
|
||||
cleanVersion := int32(1)
|
||||
textVersion := int32(1)
|
||||
|
||||
q, err := queryqueue.New(ctx, db, coll, results, docID, cleanVersion, textVersion)
|
||||
q, err := queryqueue.New(ctx, &queryqueue.NewConfig{
|
||||
db, &coll, results, docID, cleanVersion, textVersion,
|
||||
})
|
||||
assert.Nil(t, err)
|
||||
assert.Equal(t, expectedQueries, q.GetQueue())
|
||||
|
||||
|
||||
@@ -16,19 +16,28 @@ type Queue struct {
|
||||
results []*result.Result
|
||||
collector *collector.Collector
|
||||
db *database.Connection
|
||||
documentId uuid.UUID
|
||||
cleanVersion int32
|
||||
textVersion int32
|
||||
documentId uuid.UUID
|
||||
}
|
||||
|
||||
func New(ctx context.Context, db *database.Connection, coll *collector.Collector, results []*result.Result, docId uuid.UUID, cleanVersion int32, textVersion int32) (*Queue, error) {
|
||||
type NewConfig struct {
|
||||
DB *database.Connection
|
||||
Collector *collector.Collector
|
||||
Results []*result.Result
|
||||
DocumentID uuid.UUID
|
||||
CleanVersion int32
|
||||
TextVersion int32
|
||||
}
|
||||
|
||||
func New(ctx context.Context, cfg *NewConfig) (*Queue, error) {
|
||||
queue := Queue{
|
||||
db: db,
|
||||
results: results,
|
||||
collector: coll,
|
||||
documentId: docId,
|
||||
cleanVersion: cleanVersion,
|
||||
textVersion: textVersion,
|
||||
db: cfg.DB,
|
||||
results: cfg.Results,
|
||||
collector: cfg.Collector,
|
||||
documentId: cfg.DocumentID,
|
||||
cleanVersion: cfg.CleanVersion,
|
||||
textVersion: cfg.TextVersion,
|
||||
}
|
||||
|
||||
err := queue.getCollectorQueries(ctx)
|
||||
|
||||
@@ -29,19 +29,11 @@ func TestService(t *testing.T) {
|
||||
Queries: queries,
|
||||
Pool: pool,
|
||||
}
|
||||
jobID := uuid.New()
|
||||
dbJobID := database.MustToDBUUID(jobID)
|
||||
collectorID := uuid.New()
|
||||
dbCollectorID := database.MustToDBUUID(collectorID)
|
||||
|
||||
pool.ExpectQuery("name: GetCollectorFromJobID :one").WithArgs(dbJobID).
|
||||
WillReturnRows(
|
||||
pgxmock.NewRows([]string{"id", "jobId", "minCleanVersion", "minTextVersion"}).
|
||||
AddRow(dbCollectorID, dbJobID, int32(1), int32(1)),
|
||||
)
|
||||
|
||||
coll, err := collector.NewByJobId(ctx, db, jobID)
|
||||
assert.Nil(t, err)
|
||||
coll := collector.Collector{
|
||||
ID: uuid.New(),
|
||||
}
|
||||
dbCollectorID := database.MustToDBUUID(coll.ID)
|
||||
|
||||
queryOneID := uuid.New()
|
||||
queryOneVersion := int32(1)
|
||||
@@ -74,13 +66,13 @@ func TestService(t *testing.T) {
|
||||
if q.RequiredQueryIDs != nil {
|
||||
dbReqIDs = database.MustToDBUUIDArray(*q.RequiredQueryIDs)
|
||||
}
|
||||
ty, err := queryprocessor.ToDBNullQueryType(q.Type)
|
||||
ty, err := queryprocessor.ToDBQueryType(q.Type)
|
||||
assert.Nil(t, err)
|
||||
rows = rows.
|
||||
AddRow(dbCollectorID, dbID, ty, &q.Version, dbReqIDs)
|
||||
AddRow(dbCollectorID, dbID, ty, q.Version, dbReqIDs)
|
||||
}
|
||||
|
||||
pool.ExpectQuery("name: GetCollectorQueries :many").WithArgs(dbCollectorID).WillReturnRows(rows)
|
||||
pool.ExpectQuery("name: ListCollectorQueries :many").WithArgs(dbCollectorID).WillReturnRows(rows)
|
||||
|
||||
contextResultID := uuid.New()
|
||||
results := []*result.Result{
|
||||
@@ -102,7 +94,9 @@ func TestService(t *testing.T) {
|
||||
cleanVersion := int32(1)
|
||||
textVersion := int32(1)
|
||||
|
||||
q, err := queryqueue.New(ctx, db, coll, results, docID, cleanVersion, textVersion)
|
||||
q, err := queryqueue.New(ctx, &queryqueue.NewConfig{
|
||||
db, &coll, results, docID, cleanVersion, textVersion,
|
||||
})
|
||||
assert.Nil(t, err)
|
||||
assert.Equal(t, expectedQueries, q.GetQueue())
|
||||
}
|
||||
@@ -119,22 +113,13 @@ func TestQueueFail(t *testing.T) {
|
||||
Queries: queries,
|
||||
Pool: pool,
|
||||
}
|
||||
jobID := uuid.New()
|
||||
dbJobID := database.MustToDBUUID(jobID)
|
||||
collectorID := uuid.New()
|
||||
dbCollectorID := database.MustToDBUUID(collectorID)
|
||||
|
||||
pool.ExpectQuery("name: GetCollectorFromJobID :one").WithArgs(dbJobID).
|
||||
WillReturnRows(
|
||||
pgxmock.NewRows([]string{"id", "jobId", "minCleanVersion", "minTextVersion"}).
|
||||
AddRow(dbCollectorID, dbJobID, int32(1), int32(1)),
|
||||
)
|
||||
|
||||
coll, err := collector.NewByJobId(ctx, db, jobID)
|
||||
assert.Nil(t, err)
|
||||
coll := collector.Collector{
|
||||
ID: uuid.New(),
|
||||
}
|
||||
dbCollectorID := database.MustToDBUUID(coll.ID)
|
||||
|
||||
dbErr := "database failure"
|
||||
pool.ExpectQuery("name: GetCollectorQueries :many").WithArgs(dbCollectorID).
|
||||
pool.ExpectQuery("name: ListCollectorQueries :many").WithArgs(dbCollectorID).
|
||||
WillReturnError(errors.New(dbErr))
|
||||
|
||||
results := []*result.Result{}
|
||||
@@ -143,6 +128,8 @@ func TestQueueFail(t *testing.T) {
|
||||
cleanVersion := int32(1)
|
||||
textVersion := int32(1)
|
||||
|
||||
_, err = queryqueue.New(ctx, db, coll, results, docID, cleanVersion, textVersion)
|
||||
_, err = queryqueue.New(ctx, &queryqueue.NewConfig{
|
||||
db, &coll, results, docID, cleanVersion, textVersion,
|
||||
})
|
||||
assert.EqualError(t, err, dbErr)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user