diff options
Diffstat (limited to 'tests/envop.at')
-rw-r--r-- | tests/envop.at | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/tests/envop.at b/tests/envop.at new file mode 100644 index 0000000..6f634fb --- /dev/null +++ b/tests/envop.at | |||
@@ -0,0 +1,101 @@ | |||
1 | # ENVTEST(name,kw,args,output) | ||
2 | m4_pushdef([ENVTEST], | ||
3 | [AT_SETUP([$1]) | ||
4 | AT_KEYWORDS([envop $2]) | ||
5 | AT_CHECK([envtest $3], | ||
6 | [0], | ||
7 | [$4]) | ||
8 | AT_CLEANUP | ||
9 | ]) | ||
10 | dnl ############################# | ||
11 | dnl Start tests | ||
12 | dnl ############################# | ||
13 | |||
14 | AT_BANNER([Environment modification framework]) | ||
15 | |||
16 | ENVTEST([default environment],[defenv],[], | ||
17 | [HOME="/home/user" | ||
18 | LC_ALL="C" | ||
19 | LC_CTYPE="C" | ||
20 | LC_MESSAGES="C" | ||
21 | LC_NUMERIC="C" | ||
22 | LOGIN="user" | ||
23 | PATH="/usr/local/bin:/usr/bin:/bin" | ||
24 | PWD="/home" | ||
25 | USER="user" | ||
26 | ]) | ||
27 | |||
28 | ENVTEST([clear],[clear],[-clear]) | ||
29 | |||
30 | ENVTEST([keep name],[keep],[-clear -keep HOME USER], | ||
31 | [HOME="/home/user" | ||
32 | USER="user" | ||
33 | ]) | ||
34 | |||
35 | ENVTEST([keep name=value],[keep],[-clear -keep USER=user], | ||
36 | [USER="user" | ||
37 | ]) | ||
38 | |||
39 | ENVTEST([keep name=value (mismatch)],[keep],[-clear -keep USER=gray]) | ||
40 | |||
41 | ENVTEST([keep wildcard],[keep],[-clear -keep 'LC_*'], | ||
42 | [LC_ALL="C" | ||
43 | LC_CTYPE="C" | ||
44 | LC_MESSAGES="C" | ||
45 | LC_NUMERIC="C" | ||
46 | ]) | ||
47 | |||
48 | ENVTEST([keep wildcard (2)],[keep],[-clear -keep 'LC_*A*'], | ||
49 | [LC_ALL="C" | ||
50 | LC_MESSAGES="C" | ||
51 | ]) | ||
52 | |||
53 | ENVTEST([keep wildcard (mismatch)],[keep],[-clear -keep 'LC_*A*R']) | ||
54 | |||
55 | ENVTEST([set],[set],[-set FOO=bar BAR=bar], | ||
56 | [BAR="bar" | ||
57 | FOO="bar" | ||
58 | HOME="/home/user" | ||
59 | LC_ALL="C" | ||
60 | LC_CTYPE="C" | ||
61 | LC_MESSAGES="C" | ||
62 | LC_NUMERIC="C" | ||
63 | LOGIN="user" | ||
64 | PATH="/usr/local/bin:/usr/bin:/bin" | ||
65 | PWD="/home" | ||
66 | USER="user" | ||
67 | ]) | ||
68 | |||
69 | ENVTEST([set (variable expansion)],[set],[-set 'PATH=${PATH}${PATH:+:}$HOME'], | ||
70 | [HOME="/home/user" | ||
71 | LC_ALL="C" | ||
72 | LC_CTYPE="C" | ||
73 | LC_MESSAGES="C" | ||
74 | LC_NUMERIC="C" | ||
75 | LOGIN="user" | ||
76 | PATH="/usr/local/bin:/usr/bin:/bin:/home/user" | ||
77 | PWD="/home" | ||
78 | USER="user" | ||
79 | ]) | ||
80 | |||
81 | ENVTEST([unset name],[unset],[-unset HOME], | ||
82 | [LC_ALL="C" | ||
83 | LC_CTYPE="C" | ||
84 | LC_MESSAGES="C" | ||
85 | LC_NUMERIC="C" | ||
86 | LOGIN="user" | ||
87 | PATH="/usr/local/bin:/usr/bin:/bin" | ||
88 | PWD="/home" | ||
89 | USER="user" | ||
90 | ]) | ||
91 | |||
92 | ENVTEST([unset wildcard],[unset],[-unset 'LC_*'], | ||
93 | [HOME="/home/user" | ||
94 | LOGIN="user" | ||
95 | PATH="/usr/local/bin:/usr/bin:/bin" | ||
96 | PWD="/home" | ||
97 | USER="user" | ||
98 | ]) | ||
99 | |||
100 | m4_popdef([ENVTEST]) | ||
101 | |||