#!/bin/bash # -*- shell-script -*- proc do_test { global file1 := $[_Dbg_expand_filename $1] assertTrue 'Should not have an error expanding $1' "$Status" global file2 := $[_Dbg_expand_filename $2] assertEquals $file1 $file2 } proc test_pre_expand_filename { do_test test-pre ./test-pre do_test "$PWD/" "$(PWD)/." do_test /tmp /tmp global file1 := $[echo] do_test $file1 ~ } proc test_pre_do_show_version { # Name we refer to ourselves by typeset _Dbg_debugger_name='bashdb' # The release name we are configured to run under. typeset _Dbg_release='4.4-0.92' global version_string := $[_Dbg_do_show_version !2 > !1] assertEquals "bashdb, release 4.4-0.92" $version_string } global abs_top_srcdir := '/src/external-vcs/sourceforge/bashdb' # Make sure $abs_top_srcdir has a trailing slash global abs_top_srcdir := "$(abs_top_srcdir%%/)/" source ${abs_top_srcdir}test/unit/helper.sh source ${abs_top_srcdir}/init/pre.sh set -- # reset $# so shunit2 doesn't get confused. [[ $0 == ${BASH_SOURCE} ]] && source ${shunit_file} (CommandList children: [ (FuncDef name: do_test body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:file1) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_expand_filename)} {($ VSub_Number "$1")})] ) left_token: spids: [16 20] ) } spids: [15] ) ] spids: [15] ) (C {(assertTrue)} {(SQ <"Should not have an error expanding $1">)} {(DQ ($ VSub_QMark "$?"))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:file2) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_expand_filename)} {($ VSub_Number "$2")})] ) left_token: spids: [35 39] ) } spids: [34] ) ] spids: [34] ) (C {(assertEquals)} {(DQ ($ VSub_Name "$file1"))} {(DQ ($ VSub_Name "$file2"))}) ] spids: [12] ) spids: [7 10] ) (FuncDef name: test_pre_expand_filename body: (BraceGroup children: [ (C {(do_test)} {(test-pre)} {(./test-pre)}) (C {(do_test)} {(DQ ($ VSub_Name "$PWD") (/))} {(DQ (${ VSub_Name PWD) (/.))}) (C {(do_test)} {(/tmp)} {(/tmp)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:file1) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(echo)} {(TildeSubPart prefix:"")})] ) left_token: spids: [92 96] ) } spids: [91] ) ] spids: [91] ) (C {(do_test)} {(DQ ($ VSub_Name "$file1"))} {(TildeSubPart prefix:"")}) ] spids: [59] ) spids: [55 58] ) (FuncDef name: test_pre_do_show_version body: (BraceGroup children: [ (C {(typeset)} {(Lit_VarLike "_Dbg_debugger_name=") (SQ )}) (C {(typeset)} {(Lit_VarLike "_Dbg_release=") (SQ <4.4-0.92>)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:version_string) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [{(_Dbg_do_show_version)}] redirects: [ (Redir op_id: Redir_GreatAnd fd: 2 arg_word: {(1)} spids: [146] ) ] ) ] ) left_token: spids: [143 148] ) } spids: [142] ) ] spids: [142] ) (C {(assertEquals)} {(DQ ("bashdb, release 4.4-0.92"))} {(DQ ($ VSub_Name "$version_string"))} ) ] spids: [114] ) spids: [110 113] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:abs_top_srcdir) op: Equal rhs: {(/src/external-vcs/sourceforge/bashdb)} spids: [163] ) ] spids: [163] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:abs_top_srcdir) op: Equal rhs: { (BracedVarSub token: suffix_op: (StringUnary op_id:VOp1_DPercent arg_word:{(Lit_Slash /)}) spids: [170 174] ) (/) } spids: [169] ) ] spids: [169] ) (C {(.)} {(${ VSub_Name abs_top_srcdir) (test/unit/helper.sh)}) (C {(.)} {(${ VSub_Name abs_top_srcdir) (/init/pre.sh)}) (C {(set)} {(--)}) (AndOr children: [ (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Number "$0")} right: {(${ VSub_Name BASH_SOURCE)} ) ) (C {(.)} {(${ VSub_Name shunit_file)}) ] op_id: Op_DAmp ) ] )