mirror of
https://github.com/Ed1s0nZ/CyberStrikeAI.git
synced 2026-05-15 04:51:01 +02:00
57 lines
1.7 KiB
Go
57 lines
1.7 KiB
Go
package openai
|
|
|
|
import "testing"
|
|
|
|
func TestNormalizeStreamingDelta_RepeatedCharBoundary(t *testing.T) {
|
|
// 流式在重复数字边界分片:不得把 "43" 的首字符与 "194" 尾字符误合并。
|
|
cur, d := normalizeStreamingDelta("https://x:194", "43")
|
|
if want := "https://x:19443"; cur != want {
|
|
t.Fatalf("next: want %q got %q", want, cur)
|
|
}
|
|
if d != "43" {
|
|
t.Fatalf("delta: want %q got %q", "43", d)
|
|
}
|
|
}
|
|
|
|
func TestNormalizeStreamingDelta_CumulativePrefix(t *testing.T) {
|
|
cur, d := normalizeStreamingDelta("今天", "今天天气")
|
|
if cur != "今天天气" || d != "天气" {
|
|
t.Fatalf("got cur=%q d=%q", cur, d)
|
|
}
|
|
}
|
|
|
|
func TestNormalizeStreamingDelta_FullRetransmit(t *testing.T) {
|
|
cur, d := normalizeStreamingDelta("今天", "今天")
|
|
if d != "" || cur != "今天" {
|
|
t.Fatalf("got cur=%q d=%q", cur, d)
|
|
}
|
|
}
|
|
|
|
func TestNormalizeStreamingDelta_SingleRuneRepeated(t *testing.T) {
|
|
cur, d := normalizeStreamingDelta("呀", "呀")
|
|
if want := "呀呀"; cur != want {
|
|
t.Fatalf("next: want %q got %q", want, cur)
|
|
}
|
|
if d != "呀" {
|
|
t.Fatalf("delta: want %q got %q", "呀", d)
|
|
}
|
|
cur, d = normalizeStreamingDelta("4", "4")
|
|
if want := "44"; cur != want {
|
|
t.Fatalf("next: want %q got %q", want, cur)
|
|
}
|
|
if d != "4" {
|
|
t.Fatalf("delta: want %q got %q", "4", d)
|
|
}
|
|
}
|
|
|
|
func TestNormalizeStreamingDelta_CumulativeExtendsNumber(t *testing.T) {
|
|
// 已缓冲 "194" 后收到累计串 "19443"(注意 "1943" 并非 "19443" 的前缀,不能靠误写的中间态测 HasPrefix)。
|
|
cur, d := normalizeStreamingDelta("194", "19443")
|
|
if want := "19443"; cur != want {
|
|
t.Fatalf("next: want %q got %q", want, cur)
|
|
}
|
|
if d != "43" {
|
|
t.Fatalf("delta: want %q got %q", "43", d)
|
|
}
|
|
}
|