MCPcopy Create free account
hub / github.com/github/gh-aw / TestSpec_PublicAPI_CopyFile

Function TestSpec_PublicAPI_CopyFile

pkg/fileutil/spec_test.go:154–178  ·  view source on GitHub ↗

TestSpec_PublicAPI_CopyFile validates the documented behavior: copies src to dst using buffered I/O, creates dst if not exist, truncates if exists.

(t *testing.T)

Source from the content-addressed store, hash-verified

152// TestSpec_PublicAPI_CopyFile validates the documented behavior:
153// copies src to dst using buffered I/O, creates dst if not exist, truncates if exists.
154func TestSpec_PublicAPI_CopyFile(t *testing.T) {
155 dir := t.TempDir()
156 src := filepath.Join(dir, "source.txt")
157 dst := filepath.Join(dir, "destination.txt")
158 content := []byte("hello specification test")
159
160 require.NoError(t, os.WriteFile(src, content, 0600))
161
162 t.Run("copies file content to new destination", func(t *testing.T) {
163 err := fileutil.CopyFile(src, dst)
164 require.NoError(t, err, "CopyFile should not error for valid src/dst")
165 got, err := os.ReadFile(dst)
166 require.NoError(t, err)
167 assert.Equal(t, content, got, "destination should have same content as source")
168 })
169
170 t.Run("truncates existing destination", func(t *testing.T) {
171 require.NoError(t, os.WriteFile(dst, []byte("old content that is longer"), 0600))
172 err := fileutil.CopyFile(src, dst)
173 require.NoError(t, err, "CopyFile should not error when destination exists")
174 got, err := os.ReadFile(dst)
175 require.NoError(t, err)
176 assert.Equal(t, content, got, "destination should be truncated and overwritten with source content")
177 })
178}
179
180// makeTar builds an in-memory tar archive with named entries.
181func makeTar(entries map[string][]byte) []byte {

Callers

nothing calls this directly

Calls 2

CopyFileFunction · 0.92
RunMethod · 0.45

Tested by

no test coverage detected