MCPcopy
hub / github.com/docker/docker-agent / TestBuildSession_RequiresUserMessage

Function TestBuildSession_RequiresUserMessage

pkg/chatserver/server_test.go:20–65  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

18)
19
20func TestBuildSession_RequiresUserMessage(t *testing.T) {
21 t.Parallel()
22 tests := []struct {
23 name string
24 messages []ChatCompletionMessage
25 wantNil bool
26 }{
27 {
28 name: "empty list",
29 wantNil: true,
30 },
31 {
32 name: "only system messages",
33 messages: []ChatCompletionMessage{
34 {Role: "system", Content: "be helpful"},
35 },
36 wantNil: true,
37 },
38 {
39 name: "blank user message is ignored",
40 messages: []ChatCompletionMessage{
41 {Role: "user", Content: " "},
42 },
43 wantNil: true,
44 },
45 {
46 name: "valid user message",
47 messages: []ChatCompletionMessage{
48 {Role: "user", Content: "hello"},
49 },
50 },
51 }
52
53 for _, tc := range tests {
54 t.Run(tc.name, func(t *testing.T) {
55 sess := buildSession(tc.messages)
56 if tc.wantNil {
57 assert.Nil(t, sess)
58 return
59 }
60 require.NotNil(t, sess)
61 assert.True(t, sess.ToolsApproved)
62 assert.True(t, sess.NonInteractive)
63 })
64 }
65}
66
67func TestBuildSession_PreservesHistory(t *testing.T) {
68 t.Parallel()

Callers

nothing calls this directly

Calls 2

buildSessionFunction · 0.85
RunMethod · 0.65

Tested by

no test coverage detected