Borg/pkg/datanode/fromtar_test.go
google-labs-jules[bot] 7a76d55411 feat: Increase test coverage for pkg/datanode
This commit increases the test coverage for the `pkg/datanode` package
from 58.1% to 66.9%.

The following changes were made:
- Added a new test file, `pkg/datanode/fromtar_test.go`, to test the
  `FromTar` function.
- Added a new test file, `pkg/datanode/fs_test.go`, to test the `Stat`,
  `Exists`, and `Walk` functions.
- Refactored the existing tests in `pkg/datanode/datanode_test.go` to
  remove the monolithic test function and improve the organization of
  the tests.
2025-11-13 19:48:15 +00:00

38 lines
753 B
Go

package datanode
import (
"archive/tar"
"bytes"
"testing"
)
func TestFromTar(t *testing.T) {
buf := new(bytes.Buffer)
tw := tar.NewWriter(buf)
testData := "hello world"
hdr := &tar.Header{
Name: "test.txt",
Mode: 0600,
Size: int64(len(testData)),
}
if err := tw.WriteHeader(hdr); err != nil {
t.Fatalf("failed to write header: %v", err)
}
if _, err := tw.Write([]byte(testData)); err != nil {
t.Fatalf("failed to write content: %v", err)
}
if err := tw.Close(); err != nil {
t.Fatalf("failed to close writer: %v", err)
}
dn, err := FromTar(buf.Bytes())
if err != nil {
t.Fatalf("FromTar failed: %v", err)
}
file, err := dn.Open("test.txt")
if err != nil {
t.Fatalf("Open failed: %v", err)
}
defer file.Close()
}