Skip to content

Commit a1812d7

Browse files
committed
test(openclip): handle close errors in write helpers
1 parent f1169a4 commit a1812d7

1 file changed

Lines changed: 19 additions & 4 deletions

File tree

examples/openclip/main_test.go

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,14 @@ func TestParsePositiveIntEnv(t *testing.T) {
5454
t.Fatal("expected error for zero")
5555
}
5656
})
57+
58+
t.Run("rejects negative", func(t *testing.T) {
59+
t.Setenv(key, "-3")
60+
_, err := parsePositiveIntEnv(key, 30)
61+
if err == nil {
62+
t.Fatal("expected error for negative value")
63+
}
64+
})
5765
}
5866

5967
func TestValidateManifestRow(t *testing.T) {
@@ -75,6 +83,9 @@ func TestValidateManifestRow(t *testing.T) {
7583
row manifestRow
7684
}{
7785
{name: "empty id", row: manifestRow{File: "x.png", Dataset: "d", Split: "s", Prompt: "p"}},
86+
{name: "empty file", row: manifestRow{ID: "x", Dataset: "d", Split: "s", Prompt: "p"}},
87+
{name: "empty dataset", row: manifestRow{ID: "x", File: "x.png", Split: "s", Prompt: "p"}},
88+
{name: "empty split", row: manifestRow{ID: "x", File: "x.png", Dataset: "d", Prompt: "p"}},
7889
{name: "absolute path", row: manifestRow{ID: "x", File: "/tmp/x.png", Dataset: "d", Split: "s", Prompt: "p"}},
7990
{name: "nested path", row: manifestRow{ID: "x", File: "nested/x.png", Dataset: "d", Split: "s", Prompt: "p"}},
8091
{name: "traversal", row: manifestRow{ID: "x", File: "../x.png", Dataset: "d", Split: "s", Prompt: "p"}},
@@ -158,13 +169,15 @@ func TestLoadExamplesFromManifest(t *testing.T) {
158169
})
159170
}
160171

161-
func writeManifest(path string, rows []manifestRow) error {
172+
func writeManifest(path string, rows []manifestRow) (retErr error) {
162173
file, err := os.Create(path)
163174
if err != nil {
164175
return err
165176
}
166177
defer func() {
167-
_ = file.Close()
178+
if closeErr := file.Close(); retErr == nil && closeErr != nil {
179+
retErr = closeErr
180+
}
168181
}()
169182

170183
encoder := json.NewEncoder(file)
@@ -176,7 +189,7 @@ func writeManifest(path string, rows []manifestRow) error {
176189
return nil
177190
}
178191

179-
func writeTestPNG(path string) error {
192+
func writeTestPNG(path string) (retErr error) {
180193
img := image.NewNRGBA(image.Rect(0, 0, 4, 4))
181194
for y := 0; y < 4; y++ {
182195
for x := 0; x < 4; x++ {
@@ -189,7 +202,9 @@ func writeTestPNG(path string) error {
189202
return err
190203
}
191204
defer func() {
192-
_ = file.Close()
205+
if closeErr := file.Close(); retErr == nil && closeErr != nil {
206+
retErr = closeErr
207+
}
193208
}()
194209

195210
return png.Encode(file, img)

0 commit comments

Comments
 (0)