podman
54 строки · 971.0 Байт
1package compression
2
3import (
4"os"
5"path/filepath"
6"testing"
7
8crcOs "github.com/crc-org/crc/v2/pkg/os"
9)
10
11func TestCopyFile(t *testing.T) {
12testStr := "test-machine"
13
14srcFile, err := os.CreateTemp("", "machine-test-")
15if err != nil {
16t.Fatal(err)
17}
18srcFi, err := srcFile.Stat()
19if err != nil {
20t.Fatal(err)
21}
22
23_, _ = srcFile.Write([]byte(testStr)) //nolint:mirror
24srcFile.Close()
25
26srcFilePath := filepath.Join(os.TempDir(), srcFi.Name())
27
28destFile, err := os.CreateTemp("", "machine-copy-test-")
29if err != nil {
30t.Fatal(err)
31}
32
33destFi, err := destFile.Stat()
34if err != nil {
35t.Fatal(err)
36}
37
38destFile.Close()
39
40destFilePath := filepath.Join(os.TempDir(), destFi.Name())
41
42if err := crcOs.CopyFile(srcFilePath, destFilePath); err != nil {
43t.Fatal(err)
44}
45
46data, err := os.ReadFile(destFilePath)
47if err != nil {
48t.Fatal(err)
49}
50
51if string(data) != testStr {
52t.Fatalf("expected data \"%s\"; received \"%s\"", testStr, string(data))
53}
54}
55