Skip to content

Commit f1698e7

Browse files
sashabaranovRosenberg96
authored andcommitted
Add tests for form and request builders (sashabaranov#1036)
1 parent 06033d6 commit f1698e7

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed

internal/form_builder_test.go

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88

99
"bytes"
1010
"os"
11+
"strings"
1112
"testing"
1213
)
1314

@@ -175,3 +176,15 @@ func TestCreateFormFile(t *testing.T) {
175176
err = builder.createFormFile("file", bytes.NewBufferString("data"), "name")
176177
checks.ErrorIs(t, err, errMockFailingWriterError, "should propagate writer error")
177178
}
179+
180+
func TestCreateFormFileSuccess(t *testing.T) {
181+
buf := &bytes.Buffer{}
182+
builder := NewFormBuilder(buf)
183+
184+
err := builder.createFormFile("file", bytes.NewBufferString("data"), "foo.txt")
185+
checks.NoError(t, err, "createFormFile should succeed")
186+
187+
if !strings.Contains(buf.String(), "filename=\"foo.txt\"") {
188+
t.Fatalf("expected filename header, got %q", buf.String())
189+
}
190+
}

internal/request_builder_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,3 +86,11 @@ func TestRequestBuilderWithReaderBodyAndHeader(t *testing.T) {
8686
t.Fatalf("expected header set to val, got %q", req.Header.Get("X-Test"))
8787
}
8888
}
89+
90+
func TestRequestBuilderInvalidURL(t *testing.T) {
91+
b := NewRequestBuilder()
92+
_, err := b.Build(context.Background(), http.MethodGet, ":", nil, nil)
93+
if err == nil {
94+
t.Fatal("expected error for invalid URL")
95+
}
96+
}

0 commit comments

Comments
 (0)