nix-helpers: b633c2c04177b9a57915dbfe1cd18132b6321aed
1: { runCmd, unpack' }:
2:
3: with {
4: dir = runCmd "dir" { } ''
5: mkdir "$out"
6: echo "test" > "$out/foo.txt"
7: '';
8:
9: tarball = runCmd "tarball.tar.gz" { } ''
10: mkdir toplevelDir
11: echo "test" > toplevelDir/foo.txt
12: tar czf "$out" toplevelDir
13: '';
14:
15: targz = runCmd "targz.tgz" { } ''
16: mkdir toplevelDir
17: echo "test" > toplevelDir/foo.txt
18: tar czf "$out" toplevelDir
19: '';
20: };
21: runCmd "check-unpack" {
22: dir = unpack' "dir" dir;
23: tarball = unpack' "tarball" tarball;
24: targz = unpack' "targz" targz;
25: } ''
26: check() {
27: echo "Checking $2" 1>&2
28: [[ -d "$1" ]] || {
29: echo "$1 isn't a directory" 1>&2
30: exit 1
31: }
32: [[ -f "$1/foo.txt" ]] || {
33: echo "Didn't find $1/foo.txt" 1>&2
34: exit 1
35: }
36: F="$1/foo.txt"
37: grep 'test' < "$F" > /dev/null || {
38: echo "Expected to find 'test' in $F, got:" 1>&2
39: cat "$F"
40: exit 1
41: }
42: echo "$2 passed" 1>&2
43: }
44:
45: check "$dir" "directory"
46: check "$tarball" "tarball"
47: check "$targz" "targz"
48: echo "pass" > "$out"
49: ''
Generated by git2html.