mirror of
https://github.com/danielmiessler/Fabric.git
synced 2026-02-13 15:34:59 -05:00
### CHANGES - Introduce local `chat` package for message abstraction - Replace sashabaranov/go-openai with official openai-go SDK - Update OpenAI, Azure, and Exolab plugins for new client - Refactor all AI providers to use internal chat types - Decouple codebase from third-party AI provider structs - Replace deprecated `ioutil` functions with `os` equivalents
28 lines
791 B
Go
28 lines
791 B
Go
package common
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/danielmiessler/fabric/chat"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestNormalizeMessages(t *testing.T) {
|
|
msgs := []*chat.ChatCompletionMessage{
|
|
{Role: chat.ChatMessageRoleUser, Content: "Hello"},
|
|
{Role: chat.ChatMessageRoleAssistant, Content: "Hi there!"},
|
|
{Role: chat.ChatMessageRoleUser, Content: ""},
|
|
{Role: chat.ChatMessageRoleUser, Content: ""},
|
|
{Role: chat.ChatMessageRoleUser, Content: "How are you?"},
|
|
}
|
|
|
|
expected := []*chat.ChatCompletionMessage{
|
|
{Role: chat.ChatMessageRoleUser, Content: "Hello"},
|
|
{Role: chat.ChatMessageRoleAssistant, Content: "Hi there!"},
|
|
{Role: chat.ChatMessageRoleUser, Content: "How are you?"},
|
|
}
|
|
|
|
actual := NormalizeMessages(msgs, "default")
|
|
assert.Equal(t, expected, actual)
|
|
}
|