(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_description) op: assign_op.Equal rhs: { (SQ (Token id: Id.Lit_Chars val: 'compare address parsing with and without Mail::Address' span_id: 6 ) ) } spids: [4] ) ] ) (C {(.)} {(./test-lib.sh)}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.Pipeline children:[(C {(test_have_prereq)} {(PERL)})] negated:T) terminator: (Token id:Id.Op_Semi val:';' span_id:21) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:skip_all) op: assign_op.Equal rhs: { (SQ (Token id: Id.Lit_Chars val: 'skipping perl interface tests, perl not available' span_id: 28 ) ) } spids: [26] ) ] ) (C {(test_done)}) ] spids: [14 23] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Simple words: [{(perl)} {(-MTest) (Id.Lit_Other ':') (Id.Lit_Other ':') (More)} {(-e)} {(0)}] redirects: [ (redir.Redir op: (Token id:Id.Redir_Great val:'2>' span_id:48) fd: 2 arg_word: {(/dev/null)} ) ] ) (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:skip_all) op: assign_op.Equal rhs: {(DQ ('Perl Test::More unavailable, skipping test'))} spids: [56] ) ] ) (C {(test_done)}) ] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Simple words: [{(perl)} {(-MMail) (Id.Lit_Other ':') (Id.Lit_Other ':') (Address)} {(-e)} {(0)}] redirects: [ (redir.Redir op: (Token id:Id.Redir_Great val:'2>' span_id:78) fd: 2 arg_word: {(/dev/null)} ) ] ) (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:skip_all) op: assign_op.Equal rhs: {(DQ ('Perl Mail::Address unavailable, skipping test'))} spids: [86] ) ] ) (C {(test_done)}) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_external_has_tap) op: assign_op.Equal rhs: {(1)} spids: [97] ) ] ) (C {(test_external_without_stderr)} {(SQ (Token id:Id.Lit_Chars val:'Perl address parsing function' span_id:106))} {(perl)} {(DQ ($ Id.VSub_DollarName '$TEST_DIRECTORY')) (/t9000/test.pl)} ) (C {(test_done)}) ] )