summaryrefslogtreecommitdiff
path: root/shell/hush_test/hush-vars/param_expand_assign.tests
blob: 1fba556e4678b865ac27c46d39bbea19c1343d5b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# first try some invalid patterns (do in subshell due to parsing error)
hush -c 'echo ${=}'
hush -c 'echo ${:=}'

# now some funky ones
hush -c 'echo ${#=}'
hush -c 'echo ${#:=}'

# should error out
hush -c 'set --; echo _${1=}'
hush -c 'set --; echo _${1:=}'
hush -c 'set --; echo _${1=word}'
hush -c 'set --; echo _${1:=word}'

# should not error
hush -c 'set aa; echo _${1=}'
hush -c 'set aa; echo _${1:=}'
hush -c 'set aa; echo _${1=word}'
hush -c 'set aa; echo _${1:=word}'

# should work fine
unset f; echo _$f
unset f; echo _${f=}
unset f; echo _${f:=}
unset f; echo _${f=word}
unset f; echo _${f:=word}

f=; echo _$f
f=; echo _${f=}
f=; echo _${f:=}
f=; echo _${f=word}
f=; echo _${f:=word}

f=fff; echo _$f
f=fff; echo _${f=}
f=fff; echo _${f:=}
f=fff; echo _${f=word}
f=fff; echo _${f:=word}