lottsa stuff

This commit is contained in:
2025-01-19 20:17:57 -06:00
parent 88ecb1bc24
commit 2be7b117ea
8 changed files with 424 additions and 0 deletions

44
limitedFs/limited_test.go Normal file
View File

@@ -0,0 +1,44 @@
package limitedFs
import (
"fmt"
"testing"
"github.com/spf13/afero"
)
func TestLimitedCreate(t *testing.T) {
t.Parallel()
memfs := afero.NewMemMapFs()
lfs := NewLimitedFs(memfs, 10)
for i := 0; i < 11; i++ {
_, err := lfs.Create(fmt.Sprintf("file.%d", i))
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
}
}
func TestLimitedWrite(t *testing.T) {
t.Parallel()
memfs := afero.NewMemMapFs()
lfs := NewLimitedFs(memfs, 10)
file, err := lfs.Create("file")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
for i := 0; i < 11; i++ {
_, err = file.Write([]byte("1"))
if i < 10 && err != nil {
t.Fatalf("unexpected error: %v", err)
}
if i == 10 && err == nil {
t.Fatal("expected error, got nil")
}
}
}