MCPcopy
hub / github.com/weaviate/weaviate / TestClient

Function TestClient

modules/text2vec-model2vec/clients/model2vec_test.go:32–77  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

30)
31
32func TestClient(t *testing.T) {
33 t.Run("when all is fine", func(t *testing.T) {
34 server := httptest.NewServer(&fakeHandler{t: t})
35 defer server.Close()
36 c := New(server.URL, 0, nullLogger())
37 expected := &transformers.VectorizationResult{
38 Text: "This is my text",
39 Vector: []float32{0.1, 0.2, 0.3},
40 Dimensions: 3,
41 }
42 res, err := c.VectorizeObject(context.Background(), "This is my text",
43 transformers.VectorizationConfig{
44 PoolingStrategy: "masked_mean",
45 })
46
47 assert.Nil(t, err)
48 assert.Equal(t, expected, res)
49 })
50
51 t.Run("when the context is expired", func(t *testing.T) {
52 server := httptest.NewServer(&fakeHandler{t: t})
53 defer server.Close()
54 c := New(server.URL, 0, nullLogger())
55 ctx, cancel := context.WithDeadline(context.Background(), time.Now())
56 defer cancel()
57
58 _, err := c.VectorizeObject(ctx, "This is my text", transformers.VectorizationConfig{})
59
60 require.NotNil(t, err)
61 assert.Contains(t, err.Error(), "context deadline exceeded")
62 })
63
64 t.Run("when the server returns an error", func(t *testing.T) {
65 server := httptest.NewServer(&fakeHandler{
66 t: t,
67 serverError: errors.Errorf("nope, not gonna happen"),
68 })
69 defer server.Close()
70 c := New(server.URL, 0, nullLogger())
71 _, err := c.VectorizeObject(context.Background(), "This is my text",
72 transformers.VectorizationConfig{})
73
74 require.NotNil(t, err)
75 assert.Contains(t, err.Error(), "nope, not gonna happen")
76 })
77}
78
79type fakeHandler struct {
80 t *testing.T

Callers

nothing calls this directly

Calls 10

CloseMethod · 0.95
EqualMethod · 0.80
ErrorfMethod · 0.80
NewFunction · 0.70
nullLoggerFunction · 0.70
VectorizeObjectMethod · 0.65
NowMethod · 0.65
ContainsMethod · 0.65
RunMethod · 0.45
ErrorMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…