]> git.giacomolli.uk - onechat/blob - backup_archive_helper_test.go
Accept owner photos and image files in Telegram
[onechat] / backup_archive_helper_test.go
1 package main
2
3 import (
4 "archive/tar"
5 "compress/gzip"
6 "os"
7 "path/filepath"
8 "testing"
9
10 "github.com/stretchr/testify/require"
11 )
12
13 func backupTestArchive(t *testing.T, headers ...tar.Header) string {
14 t.Helper()
15
16 path := filepath.Join(t.TempDir(), "input.tar.gz")
17 file, err := os.Create(path)
18 require.NoError(t, err)
19
20 compressed := gzip.NewWriter(file)
21
22 archive := tar.NewWriter(compressed)
23 for _, header := range headers {
24 require.NoError(t, archive.WriteHeader(&header))
25 }
26
27 require.NoError(t, archive.Close())
28 require.NoError(t, compressed.Close())
29 require.NoError(t, file.Close())
30
31 return path
32 }