Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions go/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ require (
github.com/lib/pq v1.10.9
github.com/mark3labs/mcp-go v0.29.0
github.com/pgvector/pgvector-go v0.3.0
github.com/stretchr/testify v1.10.0
github.com/weaviate/weaviate v1.30.0
github.com/weaviate/weaviate-go-client/v5 v5.1.0
github.com/xeipuuv/gojsonschema v1.2.0
Expand Down Expand Up @@ -84,7 +83,6 @@ require (
github.com/buger/jsonparser v1.1.1 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/cncf/xds/go v0.0.0-20250326154945-ae57f3c0d45f // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/envoyproxy/go-control-plane/envoy v1.32.4 // indirect
github.com/envoyproxy/protoc-gen-validate v1.2.1 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
Expand Down Expand Up @@ -117,7 +115,6 @@ require (
github.com/opentracing/opentracing-go v1.2.0 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/spiffe/go-spiffe/v2 v2.5.0 // indirect
github.com/tidwall/gjson v1.18.0 // indirect
github.com/tidwall/match v1.1.1 // indirect
Expand Down
29 changes: 21 additions & 8 deletions go/plugins/alloydb/engine_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ import (
"testing"

"github.com/jackc/pgx/v5/pgxpool"
"github.com/stretchr/testify/assert"
)

func TestApplyEngineOptionsConfig(t *testing.T) {
Expand Down Expand Up @@ -89,10 +88,16 @@ func TestApplyEngineOptionsConfig(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
cfg, err := applyEngineOptions(tc.opts)
if tc.wantErr {
assert.Error(t, err)
if err == nil {
t.Error("expected error, got nil")
}
} else {
assert.NoError(t, err)
assert.Equal(t, tc.wantIpType, cfg.ipType)
if err != nil {
t.Errorf("unexpected error: %v", err)
}
if got, want := cfg.ipType, tc.wantIpType; got != want {
t.Errorf("ipType = %v, want %v", got, want)
}
}
})
}
Expand Down Expand Up @@ -132,11 +137,19 @@ func TestGetUser(t *testing.T) {
ctx := context.Background()
user, iamAuth, err := getUser(ctx, tc.cfg)
if tc.wantErr {
assert.Error(t, err)
if err == nil {
t.Error("expected error, got nil")
}
} else {
assert.NoError(t, err)
assert.Equal(t, tc.wantUser, user)
assert.Equal(t, tc.wantIAMAuth, iamAuth)
if err != nil {
t.Errorf("unexpected error: %v", err)
}
if got, want := user, tc.wantUser; got != want {
t.Errorf("user = %q, want %q", got, want)
}
if got, want := iamAuth, tc.wantIAMAuth; got != want {
t.Errorf("iamAuth = %v, want %v", got, want)
}
}
})
}
Expand Down
26 changes: 18 additions & 8 deletions go/plugins/alloydb/genkit_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,6 @@ import (
"github.com/firebase/genkit/go/ai"
"github.com/firebase/genkit/go/genkit"
"github.com/firebase/genkit/go/internal/fakeembedder"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)

const (
Expand Down Expand Up @@ -159,9 +157,15 @@ func TestPostgres(t *testing.T) {
if err != nil {
t.Fatal(err)
}
require.Len(t, resp.Documents, 3)
require.Len(t, resp.Documents[0].Content, 1)
assert.Equal(t, "hello1", resp.Documents[0].Content[0].Text)
if len(resp.Documents) != 3 {
t.Fatalf("expected 3 documents, got %d", len(resp.Documents))
}
if len(resp.Documents[0].Content) != 1 {
t.Fatalf("expected 1 content part, got %d", len(resp.Documents[0].Content))
}
if got, want := resp.Documents[0].Content[0].Text, "hello1"; got != want {
t.Errorf("got content %q, want %q", got, want)
}

resp, err = retriever.Retrieve(ctx, &ai.RetrieverRequest{
Query: d1,
Expand All @@ -173,9 +177,15 @@ func TestPostgres(t *testing.T) {
t.Fatal(err)
}

require.Len(t, resp.Documents, 1)
require.Len(t, resp.Documents[0].Content, 1)
assert.Equal(t, "hello2", resp.Documents[0].Content[0].Text)
if len(resp.Documents) != 1 {
t.Fatalf("expected 1 document, got %d", len(resp.Documents))
}
if len(resp.Documents[0].Content) != 1 {
t.Fatalf("expected 1 content part, got %d", len(resp.Documents[0].Content))
}
if got, want := resp.Documents[0].Content[0].Text, "hello2"; got != want {
t.Errorf("got content %q, want %q", got, want)
}

}

Expand Down
10 changes: 6 additions & 4 deletions go/plugins/alloydb/indexer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,14 @@ import (
"testing"

"github.com/firebase/genkit/go/ai"
"github.com/stretchr/testify/require"
)

func TestIndex_Success_NoDocuments(t *testing.T) {
ds := DocStore{}
err := ds.Index(context.Background(), nil)
require.NoError(t, err)

if err != nil {
t.Fatalf("unexpected error: %v", err)
}
}

func TestIndex_Fail_EmbedReturnError(t *testing.T) {
Expand All @@ -44,5 +44,7 @@ func TestIndex_Fail_EmbedReturnError(t *testing.T) {
}}

err := ds.Index(context.Background(), docs)
require.Error(t, err)
if err == nil {
t.Fatal("expected error, got nil")
}
}
23 changes: 16 additions & 7 deletions go/plugins/alloydb/retriever_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,26 +16,35 @@ package alloydb

import (
"context"
"strings"
"testing"

"github.com/firebase/genkit/go/ai"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)

func TestRetriever_Fail_WrongTypeOfOption(t *testing.T) {
ds := DocStore{}
res, err := ds.Retrieve(context.Background(), &ai.RetrieverRequest{Options: struct{}{}})
require.Nil(t, res)
require.Error(t, err)
assert.ErrorContains(t, err, "postgres.Retrieve options have type")
if res != nil {
t.Errorf("Retrieve() res = %v, want nil", res)
}
if err == nil {
t.Fatal("Retrieve() expected error, got nil")
}
if want := "postgres.Retrieve options have type"; !strings.Contains(err.Error(), want) {
t.Errorf("Retrieve() error = %q, want it to contain %q", err.Error(), want)
}
}

func TestRetriever_Fail_EmbedReturnError(t *testing.T) {
ds := DocStore{
config: &Config{Embedder: mockEmbedderFail{}},
}
res, err := ds.Retrieve(context.Background(), &ai.RetrieverRequest{})
require.Nil(t, res)
require.Error(t, err)
if res != nil {
t.Errorf("Retrieve() res = %v, want nil", res)
}
if err == nil {
t.Error("Retrieve() expected error, got nil")
}
}
18 changes: 12 additions & 6 deletions go/plugins/compat_oai/generate_live_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ import (
"github.com/firebase/genkit/go/plugins/compat_oai"
"github.com/openai/openai-go"
"github.com/openai/openai-go/option"
"github.com/stretchr/testify/assert"
)

const defaultModel = "gpt-4o-mini"
Expand Down Expand Up @@ -244,14 +243,21 @@ func TestWithConfig(t *testing.T) {
result, err := generator.WithMessages(messages).WithConfig(tt.config).Generate(context.Background(), req, nil)

if tt.err != nil {
assert.Error(t, err)
assert.Equal(t, tt.err.Error(), err.Error())
if err == nil {
t.Fatal("expected error, got nil")
}
if got, want := err.Error(), tt.err.Error(); got != want {
t.Errorf("error message = %q, want %q", got, want)
}
return
}

// validate that the response was successful
assert.NoError(t, err)
assert.NotNil(t, result)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
if result == nil {
t.Fatal("expected result, got nil")
}

// validate the input request was transformed correctly
if tt.validate != nil {
Expand Down
Loading
Loading