summaryrefslogtreecommitdiff
path: root/test/unit/_expand.exp
blob: 59dbed58d6183c3695d2c96d1fdf41e312302807 (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
proc setup {home user} {
    upvar $home _home
    upvar $user _user
    save_env
    assert_bash_exec {echo "$HOME"} {} /@ _home
    set _home [string trim $_home]
    assert_bash_exec {id -un 2>/dev/null || echo "$USER"} {} /@ _user
    set _user [string trim $_user]
}

proc teardown {} {
    assert_env_unmodified {
        /COMPREPLY=/d
        /cur=/d
    }
}


setup home user


set test "~$user should set $home to COMPREPLY"
set cmd [format {cur="~%s" ; _expand ; printf "%%s\n" "$COMPREPLY"} $user]
assert_bash_list "$home" $cmd $test
sync_after_int

set test "~$user/a should set $home/a to cur"
set cmd [format {cur="~%s/a" ; _expand ; printf "%%s\n" "$cur"} $user]
assert_bash_list "$home/a" $cmd $test
sync_after_int


teardown