#!/bin/bash # -*- shell-script -*- proc test_preserve_set_opts { set -u global old_opts := $Flags global _Dbg_dbg_opts_test := '''' # If running make distcheck we can't use top_builddir # because some files aren't there but are in the install # directory. if [[ -f $top_builddir/init/opts.sh ]] { global libdir := $(top_builddir) } else { global libdir := "$(prefix)/share/bashdb" } if [[ -f $libdir/init/opts.sh ]] { # 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' source ${top_builddir}/bashdb-trace -L $libdir assertEquals $old_opts $Flags } else { echo 'Skipping test - building outside of source complications' } shell {source ${top_builddir}/bashdb-trace -L $libdir/init/opts.sh} assertEquals $Status 1 set +u } global prefix := '/usr/share' global top_builddir := '/src/external-vcs/sourceforge/bashdb' global abs_top_srcdir := '/src/external-vcs/sourceforge/bashdb' # Make sure $abs_top_srcrdir has a trailing slash global abs_top_srcdir := "$(abs_top_srcdir%%/)/" source ${abs_top_srcdir}test/unit/helper.sh source ${abs_top_srcdir}/lib/filecache.sh source ${abs_top_srcdir}/lib/sig.sh source ${abs_top_srcdir}/lib/help.sh source ${abs_top_srcdir}/command/trace.sh set -- # reset $# so shunit2 doesn't get confused. [[ $0 == ${BASH_SOURCE} ]] && source ${shunit_file} (CommandList children: [ (FuncDef name: test_preserve_set_opts body: (BraceGroup children: [ (C {(set)} {(-u)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:old_opts) op: Equal rhs: {($ VSub_Hyphen "$-")} spids: [18] ) ] spids: [18] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_Dbg_dbg_opts_test) op: Equal rhs: {(SQ )} spids: [22] ) ] spids: [22] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_f child: {($ VSub_Name "$top_builddir") (/init/opts.sh)} ) ) terminator: ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:libdir) op: Equal rhs: {(${ VSub_Name top_builddir)} spids: [55] ) ] spids: [55] ) ] spids: [-1 52] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:libdir) op: Equal rhs: {(${ VSub_Name prefix) (/share/bashdb)} spids: [64] ) ] spids: [64] ) ] spids: [61 71] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_f child: {($ VSub_Name "$libdir") (/init/opts.sh)} ) ) terminator: ) ] action: [ (C {(typeset)} {(Lit_VarLike "_Dbg_debugger_name=") (SQ )}) (C {(typeset)} {(Lit_VarLike "_Dbg_release=") (SQ <4.4-0.92>)}) (C {(.)} {(${ VSub_Name top_builddir) (/bashdb-trace)} {(-L)} {($ VSub_Name "$libdir")} ) (C {(assertEquals)} {($ VSub_Name "$old_opts")} {($ VSub_Hyphen "$-")}) ] spids: [-1 87] ) ] else_action: [ (C {(echo)} {(SQ <"Skipping test - building outside of source complications">)}) ] spids: [133 143] ) (Subshell child: (C {(.)} {(${ VSub_Name top_builddir) (/bashdb-trace)} {(-L)} {($ VSub_Name "$libdir") (/init/opts.sh)} ) spids: [147 159] ) (C {(assertEquals)} {($ VSub_QMark "$?")} {(1)}) (C {(set)} {(Lit_Other "+") (u)}) ] spids: [10] ) spids: [6 9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:prefix) op:Equal rhs:{(/usr/share)} spids:[177])] spids: [177] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:top_builddir) op: Equal rhs: {(/src/external-vcs/sourceforge/bashdb)} spids: [180] ) ] spids: [180] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:abs_top_srcdir) op: Equal rhs: {(/src/external-vcs/sourceforge/bashdb)} spids: [183] ) ] spids: [183] ) (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: [190 194] ) (/) } spids: [189] ) ] spids: [189] ) (C {(.)} {(${ VSub_Name abs_top_srcdir) (test/unit/helper.sh)}) (C {(.)} {(${ VSub_Name abs_top_srcdir) (/lib/filecache.sh)}) (C {(.)} {(${ VSub_Name abs_top_srcdir) (/lib/sig.sh)}) (C {(.)} {(${ VSub_Name abs_top_srcdir) (/lib/help.sh)}) (C {(.)} {(${ VSub_Name abs_top_srcdir) (/command/trace.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 ) ] )