Merged in bugfix/errhandling (pull request #89)

Error handling

* basic
This commit is contained in:
Michael McGuinness
2025-03-05 19:49:03 +00:00
parent c78ca26a6f
commit 8f409e60a8
36 changed files with 965 additions and 641 deletions
+30 -4
View File
@@ -56,19 +56,45 @@ func (q *Queries) AddDocumentCleanEntry(ctx context.Context, arg *AddDocumentCle
return err
}
const getDocumentCleanEntry = `-- name: GetDocumentCleanEntry :one
const getCleanEntry = `-- name: GetCleanEntry :one
SELECT id, documentId, bucket, key, version, mimetype, fail
FROM currentCleanEntries
WHERE id = $1
`
// GetCleanEntry
//
// SELECT id, documentId, bucket, key, version, mimetype, fail
// FROM currentCleanEntries
// WHERE id = $1
func (q *Queries) GetCleanEntry(ctx context.Context, cleanid pgtype.UUID) (*Currentcleanentry, error) {
row := q.db.QueryRow(ctx, getCleanEntry, cleanid)
var i Currentcleanentry
err := row.Scan(
&i.ID,
&i.Documentid,
&i.Bucket,
&i.Key,
&i.Version,
&i.Mimetype,
&i.Fail,
)
return &i, err
}
const getCleanEntryByDocId = `-- name: GetCleanEntryByDocId :one
SELECT id, documentId, bucket, key, version, mimetype, fail
FROM currentCleanEntries
WHERE documentId = $1
`
// GetDocumentCleanEntry
// GetCleanEntryByDocId
//
// SELECT id, documentId, bucket, key, version, mimetype, fail
// FROM currentCleanEntries
// WHERE documentId = $1
func (q *Queries) GetDocumentCleanEntry(ctx context.Context, documentid pgtype.UUID) (*Currentcleanentry, error) {
row := q.db.QueryRow(ctx, getDocumentCleanEntry, documentid)
func (q *Queries) GetCleanEntryByDocId(ctx context.Context, documentid pgtype.UUID) (*Currentcleanentry, error) {
row := q.db.QueryRow(ctx, getCleanEntryByDocId, documentid)
var i Currentcleanentry
err := row.Scan(
&i.ID,
+6 -5
View File
@@ -47,9 +47,6 @@ func TestClean(t *testing.T) {
assert.NoError(t, err)
assert.False(t, isclean)
_, err = queries.GetDocumentCleanEntry(ctx, id)
assert.Error(t, err)
bucket := "example_bucket"
key := "example_key"
mimetype := repository.NullCleanmimetype{
@@ -84,7 +81,7 @@ func TestClean(t *testing.T) {
assert.NoError(t, err)
assert.True(t, isclean)
clean, err := queries.GetDocumentCleanEntry(ctx, id)
clean, err := queries.GetCleanEntry(ctx, failcleanid)
assert.NoError(t, err)
assert.Equal(t, id, clean.Documentid)
assert.Nil(t, clean.Bucket)
@@ -110,7 +107,7 @@ func TestClean(t *testing.T) {
assert.NoError(t, err)
assert.True(t, isclean)
clean, err = queries.GetDocumentCleanEntry(ctx, id)
clean, err = queries.GetCleanEntry(ctx, cleanid)
assert.NoError(t, err)
assert.Equal(t, id, clean.Documentid)
assert.False(t, clean.Fail.Valid)
@@ -120,6 +117,10 @@ func TestClean(t *testing.T) {
assert.Equal(t, int32(2), clean.Version)
assert.Equal(t, cleanid, clean.ID)
docclean, err := queries.GetCleanEntryByDocId(ctx, id)
assert.NoError(t, err)
assert.EqualExportedValues(t, clean, docclean)
recent, err := queries.GetMostRecentDocumentCleanEntry(ctx, id)
assert.NoError(t, err)
assert.Equal(t, clean.Documentid, recent.Documentid)
+6 -12
View File
@@ -293,14 +293,11 @@ func TestJobSync(t *testing.T) {
assert.NoError(t, err)
assert.False(t, isSynced)
cleanentry, err := queries.GetDocumentCleanEntry(ctx, documentID)
assert.NoError(t, err)
err = queries.AddDocumentTextEntry(ctx, &repository.AddDocumentTextEntryParams{
Version: 1,
Bucket: "hi",
Key: "hello",
Cleanentryid: cleanentry.ID,
Cleanentryid: cleantwoid,
})
assert.NoError(t, err)
@@ -308,7 +305,7 @@ func TestJobSync(t *testing.T) {
assert.NoError(t, err)
assert.False(t, isSynced)
textentry, err := queries.GetDocumentTextEntry(ctx, documentID)
textentry, err := queries.GetTextEntryByDocId(ctx, documentID)
assert.NoError(t, err)
depresultid, err := queries.AddResult(ctx, &repository.AddResultParams{
@@ -395,7 +392,7 @@ func TestJobSync(t *testing.T) {
Version: 1,
Bucket: "hi",
Key: "hello",
Cleanentryid: cleanentry.ID,
Cleanentryid: cleantwoid,
})
assert.NoError(t, err)
@@ -403,7 +400,7 @@ func TestJobSync(t *testing.T) {
assert.NoError(t, err)
assert.False(t, isSynced)
textentry, err = queries.GetDocumentTextEntry(ctx, documentID)
textentry, err = queries.GetTextEntryByDocId(ctx, documentID)
assert.NoError(t, err)
depresultid, err = queries.AddResult(ctx, &repository.AddResultParams{
@@ -460,14 +457,11 @@ func TestJobSync(t *testing.T) {
assert.NoError(t, err)
assert.False(t, isSynced)
cleanentry, err = queries.GetDocumentCleanEntry(ctx, documentID)
assert.NoError(t, err)
err = queries.AddDocumentTextEntry(ctx, &repository.AddDocumentTextEntryParams{
Version: 1,
Bucket: "hi",
Key: "hello",
Cleanentryid: cleanentry.ID,
Cleanentryid: cleanthreeid,
})
assert.NoError(t, err)
@@ -475,7 +469,7 @@ func TestJobSync(t *testing.T) {
assert.NoError(t, err)
assert.False(t, isSynced)
textentry, err = queries.GetDocumentTextEntry(ctx, documentID)
textentry, err = queries.GetTextEntryByDocId(ctx, documentID)
assert.NoError(t, err)
depresultid, err = queries.AddResult(ctx, &repository.AddResultParams{
+8 -19
View File
@@ -94,14 +94,11 @@ func TestResults(t *testing.T) {
assert.NoError(t, err)
assert.False(t, issynced)
cleanentry, err := queries.GetDocumentCleanEntry(ctx, documentID)
assert.NoError(t, err)
err = queries.AddDocumentTextEntry(ctx, &repository.AddDocumentTextEntryParams{
Version: 1,
Bucket: "hi",
Key: "hello",
Cleanentryid: cleanentry.ID,
Cleanentryid: cleanid,
})
assert.NoError(t, err)
@@ -109,7 +106,7 @@ func TestResults(t *testing.T) {
assert.NoError(t, err)
assert.True(t, issynced)
textentry, err := queries.GetDocumentTextEntry(ctx, documentID)
textentry, err := queries.GetTextEntryByDocId(ctx, documentID)
assert.NoError(t, err)
err = queries.AddCollectorQuery(ctx, &repository.AddCollectorQueryParams{
@@ -255,16 +252,14 @@ func TestResultValues(t *testing.T) {
Version: 1,
})
assert.NoError(t, err)
cleanentry, err := queries.GetDocumentCleanEntry(ctx, documentID)
assert.NoError(t, err)
err = queries.AddDocumentTextEntry(ctx, &repository.AddDocumentTextEntryParams{
Version: 1,
Bucket: "hi",
Key: "hello",
Cleanentryid: cleanentry.ID,
Cleanentryid: cleanid,
})
assert.NoError(t, err)
textentry, err := queries.GetDocumentTextEntry(ctx, documentID)
textentry, err := queries.GetTextEntryByDocId(ctx, documentID)
assert.NoError(t, err)
result := repository.AddResultParams{
@@ -465,18 +460,15 @@ func TestUnsyncedNoDepsQueries(t *testing.T) {
assert.NoError(t, err)
assert.Len(t, qs, 0)
cleanentry, err := queries.GetDocumentCleanEntry(ctx, documentID)
assert.NoError(t, err)
err = queries.AddDocumentTextEntry(ctx, &repository.AddDocumentTextEntryParams{
Version: 1,
Bucket: "hi",
Key: "hello",
Cleanentryid: cleanentry.ID,
Cleanentryid: cleanid,
})
assert.NoError(t, err)
textentry, err := queries.GetDocumentTextEntry(ctx, documentID)
textentry, err := queries.GetTextEntryByDocId(ctx, documentID)
assert.NoError(t, err)
qs, err = queries.ListUnsyncedNoDepsQueriesByDocId(ctx, documentID)
@@ -541,18 +533,15 @@ func TestUnsyncedNoDepsQueries(t *testing.T) {
assert.NoError(t, err)
assert.Len(t, qs, 0)
cleantwoentry, err := queries.GetDocumentCleanEntry(ctx, documentTwoID)
assert.NoError(t, err)
err = queries.AddDocumentTextEntry(ctx, &repository.AddDocumentTextEntryParams{
Version: 1,
Bucket: "hi",
Key: "hello",
Cleanentryid: cleantwoentry.ID,
Cleanentryid: cleantwoid,
})
assert.NoError(t, err)
texttwoentry, err := queries.GetDocumentTextEntry(ctx, documentTwoID)
texttwoentry, err := queries.GetTextEntryByDocId(ctx, documentTwoID)
assert.NoError(t, err)
_, err = queries.AddResult(ctx, &repository.AddResultParams{
+4 -4
View File
@@ -35,19 +35,19 @@ func (q *Queries) AddDocumentTextEntry(ctx context.Context, arg *AddDocumentText
return err
}
const getDocumentTextEntry = `-- name: GetDocumentTextEntry :one
const getTextEntryByDocId = `-- name: GetTextEntryByDocId :one
SELECT id, documentId, bucket, key, version, cleanEntryId
FROM currentTextEntries
WHERE documentId = $1
`
// GetDocumentTextEntry
// GetTextEntryByDocId
//
// SELECT id, documentId, bucket, key, version, cleanEntryId
// FROM currentTextEntries
// WHERE documentId = $1
func (q *Queries) GetDocumentTextEntry(ctx context.Context, documentid pgtype.UUID) (*Currenttextentry, error) {
row := q.db.QueryRow(ctx, getDocumentTextEntry, documentid)
func (q *Queries) GetTextEntryByDocId(ctx context.Context, documentid pgtype.UUID) (*Currenttextentry, error) {
row := q.db.QueryRow(ctx, getTextEntryByDocId, documentid)
var i Currenttextentry
err := row.Scan(
&i.ID,
+2 -5
View File
@@ -62,9 +62,6 @@ func TestTextExtraction(t *testing.T) {
})
assert.NoError(t, err)
cleanentry, err := queries.GetDocumentCleanEntry(ctx, id)
assert.NoError(t, err)
isextract, err := queries.IsDocumentTextExtracted(ctx, id)
assert.NoError(t, err)
assert.False(t, isextract)
@@ -73,7 +70,7 @@ func TestTextExtraction(t *testing.T) {
Version: 1,
Bucket: bucket,
Key: key,
Cleanentryid: cleanentry.ID,
Cleanentryid: cleanid,
})
assert.NoError(t, err)
@@ -81,7 +78,7 @@ func TestTextExtraction(t *testing.T) {
assert.NoError(t, err)
assert.True(t, isextract)
text, err := queries.GetDocumentTextEntry(ctx, id)
text, err := queries.GetTextEntryByDocId(ctx, id)
assert.NoError(t, err)
assert.Equal(t, id, text.Documentid)
assert.Equal(t, bucket, text.Bucket)