Ai
2 Star 0 Fork 0

ledao/go-openai

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
form_builder_test.go 1.36 KB
一键复制 编辑 原始数据 按行查看 历史
davezhao 提交于 2024-11-05 19:07 +08:00 . rename
package openai //nolint:testpackage // testing private field
import (
"gitee.com/ledao/go-openai/internal/test"
"gitee.com/ledao/go-openai/internal/test/checks"
"bytes"
"errors"
"os"
"testing"
)
type failingWriter struct {
}
var errMockFailingWriterError = errors.New("mock writer failed")
func (*failingWriter) Write([]byte) (int, error) {
return 0, errMockFailingWriterError
}
func TestFormBuilderWithFailingWriter(t *testing.T) {
dir, cleanup := test.CreateTestDirectory(t)
defer cleanup()
file, err := os.CreateTemp(dir, "")
if err != nil {
t.Errorf("Error creating tmp file: %v", err)
}
defer file.Close()
defer os.Remove(file.Name())
builder := NewFormBuilder(&failingWriter{})
err = builder.CreateFormFile("file", file)
checks.ErrorIs(t, err, errMockFailingWriterError, "formbuilder should return error if writer fails")
}
func TestFormBuilderWithClosedFile(t *testing.T) {
dir, cleanup := test.CreateTestDirectory(t)
defer cleanup()
file, err := os.CreateTemp(dir, "")
if err != nil {
t.Errorf("Error creating tmp file: %v", err)
}
file.Close()
defer os.Remove(file.Name())
body := &bytes.Buffer{}
builder := NewFormBuilder(body)
err = builder.CreateFormFile("file", file)
checks.HasError(t, err, "formbuilder should return error if file is closed")
checks.ErrorIs(t, err, os.ErrClosed, "formbuilder should return error if file is closed")
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/ledao/go-openai.git
git@gitee.com:ledao/go-openai.git
ledao
go-openai
go-openai
v1.0.10

搜索帮助