. ---------------------------------------------------------------------- Ran 1 test in 0.011s OK ('\n---', 'foo') {(foo)}('\n---', "'hi'") {(SQ (Token id:Id.Lit_Chars val:hi span_id:1))}('\n---', '$var') {($ Id.VSub_DollarName '$var')}('\n---', '${var}') {(${ Id.VSub_Name var)}('\n---', ' "$var" ') {(DQ ($ Id.VSub_DollarName '$var'))}('\n---', ' "${var}" ') {(DQ (${ Id.VSub_Name var))}('\n---', ' $((1+2)) ') { (word_part.ArithSub anode: (arith_expr.Binary op_id: Id.Arith_Plus left: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)}) right: (arith_expr.ArithWord w:{(Id.Lit_Digits 2)}) ) ) }('\n---', ' $(echo hi) ') { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:1) command_list: (command.CommandList children:[(C {(echo)} {(hi)})]) ) }('\n---', ' "$((1+2))" ') { (DQ (word_part.ArithSub anode: (arith_expr.Binary op_id: Id.Arith_Plus left: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)}) right: (arith_expr.ArithWord w:{(Id.Lit_Digits 2)}) ) ) ) }('\n---', ' "$(echo hi)" ') { (DQ (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:2) command_list: (command.CommandList children:[(C {(echo)} {(hi)})]) ) ) }('\n---', ' $src/file ') {($ Id.VSub_DollarName '$src') (/file)}('\n---', ' ${src}/file ') {(${ Id.VSub_Name src) (/file)}('\n---', ' "$src/file" ') {(DQ ($ Id.VSub_DollarName '$src') (/file))}('\n---', ' "${src}/file" ') {(DQ (${ Id.VSub_Name src) (/file))}('\n---', ' $((1+2))$(echo hi) ') { (word_part.ArithSub anode: (arith_expr.Binary op_id: Id.Arith_Plus left: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)}) right: (arith_expr.ArithWord w:{(Id.Lit_Digits 2)}) ) ) (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:7) command_list: (command.CommandList children:[(C {(echo)} {(hi)})]) ) }('\n---', ' ~/src ') {(Id.Lit_TildeLike '~') (/src)}('\n---', ' ~bob/foo ') {(Id.Lit_TildeLike '~bob') (/foo)}('\n---', 'notleading~') {(notleading) (Id.Lit_TildeLike '~')}('\n---', ' "~/src" ') {(DQ ('~/src'))}('\n---', ' "~bob/foo" ') {(DQ ('~bob/foo'))}