diff options
author | Hanspeter Portner | 2019-08-16 23:40:19 +0200 |
---|---|---|
committer | Jason A. Donenfeld | 2020-02-26 09:57:40 +0800 |
commit | 06671f4b2167951c6b46401b0f5ac8af4d48d50a (patch) | |
tree | 99611b13d44424fa1eb27ea9c3700d9d535f432d /tests | |
parent | fde897b8171ed2e925b44ec6f69590ec07241017 (diff) | |
download | cgit-06671f4b2167951c6b46401b0f5ac8af4d48d50a.tar.gz cgit-06671f4b2167951c6b46401b0f5ac8af4d48d50a.tar.bz2 cgit-06671f4b2167951c6b46401b0f5ac8af4d48d50a.zip |
ui-snapshot: add support for lzip compression
This patch adds support for lzip [1] compressed snapshots (*.tar.lz)
[1] https://www.nongnu.org/lzip/
Signed-off-by: Hanspeter Portner <dev@open-music-kontrollers.ch>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/setup.sh | 2 | ||||
-rwxr-xr-x | tests/t0107-snapshot.sh | 42 |
2 files changed, 43 insertions, 1 deletions
diff --git a/tests/setup.sh b/tests/setup.sh index 7590f04..69e47e6 100755 --- a/tests/setup.sh +++ b/tests/setup.sh | |||
@@ -104,7 +104,7 @@ virtual-root=/ | |||
104 | cache-root=$PWD/cache | 104 | cache-root=$PWD/cache |
105 | 105 | ||
106 | cache-size=1021 | 106 | cache-size=1021 |
107 | snapshots=tar.gz tar.bz zip | 107 | snapshots=tar.gz tar.bz tar.lz zip |
108 | enable-log-filecount=1 | 108 | enable-log-filecount=1 |
109 | enable-log-linecount=1 | 109 | enable-log-linecount=1 |
110 | summary-log=5 | 110 | summary-log=5 |
diff --git a/tests/t0107-snapshot.sh b/tests/t0107-snapshot.sh index 6cf7aaa..a845ad9 100755 --- a/tests/t0107-snapshot.sh +++ b/tests/t0107-snapshot.sh | |||
@@ -38,6 +38,48 @@ test_expect_success 'verify untarred file-5' ' | |||
38 | test_line_count = 1 master/file-5 | 38 | test_line_count = 1 master/file-5 |
39 | ' | 39 | ' |
40 | 40 | ||
41 | if test -n "$(which lzip 2>/dev/null)"; then | ||
42 | test_set_prereq LZIP | ||
43 | else | ||
44 | say 'Skipping LZIP validation tests: lzip not found' | ||
45 | fi | ||
46 | |||
47 | test_expect_success LZIP 'get foo/snapshot/master.tar.lz' ' | ||
48 | cgit_url "foo/snapshot/master.tar.lz" >tmp | ||
49 | ' | ||
50 | |||
51 | test_expect_success LZIP 'check html headers' ' | ||
52 | head -n 1 tmp | | ||
53 | grep "Content-Type: application/x-lzip" && | ||
54 | |||
55 | head -n 2 tmp | | ||
56 | grep "Content-Disposition: inline; filename=.master.tar.lz." | ||
57 | ' | ||
58 | |||
59 | test_expect_success LZIP 'strip off the header lines' ' | ||
60 | strip_headers <tmp >master.tar.lz | ||
61 | ' | ||
62 | |||
63 | test_expect_success LZIP 'verify lzip format' ' | ||
64 | lzip --test master.tar.lz && | ||
65 | cp master.tar.lz /tmp/. | ||
66 | ' | ||
67 | |||
68 | test_expect_success LZIP 'untar' ' | ||
69 | rm -rf master && | ||
70 | tar --lzip -xf master.tar.lz | ||
71 | ' | ||
72 | |||
73 | test_expect_success LZIP 'count files' ' | ||
74 | ls master/ >output && | ||
75 | test_line_count = 5 output | ||
76 | ' | ||
77 | |||
78 | test_expect_success LZIP 'verify untarred file-5' ' | ||
79 | grep "^5$" master/file-5 && | ||
80 | test_line_count = 1 master/file-5 | ||
81 | ' | ||
82 | |||
41 | test_expect_success 'get foo/snapshot/master.zip' ' | 83 | test_expect_success 'get foo/snapshot/master.zip' ' |
42 | cgit_url "foo/snapshot/master.zip" >tmp | 84 | cgit_url "foo/snapshot/master.zip" >tmp |
43 | ' | 85 | ' |