(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MAKEFS) op: assign_op.Equal rhs: {(DQ <'makefs -t cd9660'>)} spids: [107] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MOUNT) op: assign_op.Equal rhs: {(DQ <mount_cd9660>)} spids: [112] ) ] ) (C {<.>} { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<dirname>} {(DQ ($ Id.VSub_Number '$0'))}) ) <'/makefs_tests_common.sh'> ) } ) (command.ShFunction name: common_cleanup body: (BraceGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_md_device) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<cat>} {($ Id.VSub_DollarName '$TEST_MD_DEVICE_FILE')} ) ) } spids: [143] ) ] ) ] negated: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<echo>} { (DQ ($ Id.VSub_DollarName '$TEST_MD_DEVICE_FILE') <' could not be opened; has an md(4) device been attached?'> ) } ) (command.ControlFlow token:<Id.ControlFlow_Return return>) ] spids: [139 151] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<umount>} {<-f>} {<'/dev/'> ($ Id.VSub_DollarName '$test_md_device')}) (C {<Id.Lit_Colon ':'>}) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<mdconfig>} {<-d>} {<-u>} {($ Id.VSub_DollarName '$test_md_device')}) (C {<Id.Lit_Colon ':'>}) ] ) ] ) ) (command.ShFunction name: check_base_iso9660_image_contents body: (BraceGroup children: [ (C {<check_image_contents>} {(DQ ($ Id.VSub_At '$@'))} {<-X>} {<c>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<test>} {<-L>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR') <'/c'>} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<test>} {<-f>} {($ Id.VSub_DollarName '$TEST_MOUNT_DIR') <'/c'>} ) ] ) ) (C {<atf_test_case>} {<D_flag>} {<cleanup>}) (command.ShFunction name: D_flag_body body: (BraceGroup children: [ (C {<atf_skip>} {(DQ <'makefs crashes with SIGBUS with dupe mtree entries; see FreeBSD bug # 192839'>)} ) (C {<create_test_inputs>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<save> <Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<mtree>} {<-cp>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<not-empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-F>} {($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<-M>} {<1m>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<cp>} {($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<spec2.mtree>} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<save> <Id.Lit_Colon ':'> <dupe_> ($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<cat>} {($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<spec2.mtree>} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<not-empty>} {<-s>} {<not-exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-F>} {<dupe_> ($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<-M>} {<1m>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<not-empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-D>} {<-F>} {<dupe_> ($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<-M>} {<1m>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) ] ) ) (command.ShFunction name:D_flag_cleanup body:(BraceGroup children:[(C {<common_cleanup>})])) (C {<atf_test_case>} {<F_flag>} {<cleanup>}) (command.ShFunction name: F_flag_body body: (BraceGroup children: [ (C {<create_test_inputs>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<save> <Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<mtree>} {<-cp>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-F>} {($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<-M>} {<1m>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<mount_image>}) (C {<check_base_iso9660_image_contents>}) ] ) ) (command.ShFunction name:F_flag_cleanup body:(BraceGroup children:[(C {<common_cleanup>})])) (C {<atf_test_case>} {<from_mtree_spec_file>} {<cleanup>}) (command.ShFunction name: from_mtree_spec_file_body body: (BraceGroup children: [ (C {<create_test_inputs>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<save> <Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$TEST_SPEC_FILE')} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<mtree>} {<-c>} {<-k>} {(DQ ($ Id.VSub_DollarName '$DEFAULT_MTREE_KEYWORDS'))} {<-p>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<cd>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_SPEC_FILE')} ) (C {<cd>} {<->}) (C {<mount_image>}) (C {<check_base_iso9660_image_contents>}) ] ) ) (command.ShFunction name: from_mtree_spec_file_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (C {<atf_test_case>} {<from_multiple_dirs>} {<cleanup>}) (command.ShFunction name: from_multiple_dirs_body body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_inputs_dir2) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$TMPDIR') <'/inputs2'>} spids: [714] ) ] ) (C {<create_test_inputs>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<mkdir>} {<-p>} {($ Id.VSub_DollarName '$test_inputs_dir2')} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<touch>} {($ Id.VSub_DollarName '$test_inputs_dir2') <'/multiple_dirs_test_file'>} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} {($ Id.VSub_DollarName '$test_inputs_dir2')} ) (C {<mount_image>}) (C {<check_base_iso9660_image_contents>} {<-d>} {($ Id.VSub_DollarName '$test_inputs_dir2')}) ] ) ) (command.ShFunction name: from_multiple_dirs_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (C {<atf_test_case>} {<from_single_dir>} {<cleanup>}) (command.ShFunction name: from_single_dir_body body: (BraceGroup children: [ (C {<create_test_inputs>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<mount_image>}) (C {<check_base_iso9660_image_contents>}) ] ) ) (command.ShFunction name: from_single_dir_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (C {<atf_test_case>} {<o_flag_allow_deep_trees>} {<cleanup>}) (command.ShFunction name: o_flag_allow_deep_trees_body body: (BraceGroup children: [ (C {<create_test_inputs>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<mkdir>} {<-p>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR') <'/a/b/c/d/e/f/g/h/i/j'>} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<allow-deep-trees>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<mount_image>}) (C {<check_base_iso9660_image_contents>}) ] ) ) (command.ShFunction name: o_flag_allow_deep_trees_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (C {<atf_test_case>} {<o_flag_allow_max_name>} {<cleanup>}) (command.ShFunction name: o_flag_allow_max_name_body body: (BraceGroup children: [ (C {<atf_expect_fail>} { (DQ < '-o allow-max-name doesn\'t appear to be implemented on FreeBSD\'s copy of makefs [yet]' > ) } ) (C {<create_test_inputs>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:long_path) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$TEST_INPUTS_DIR') <'/'> (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<jot>} {<-s>} {(SQ )} {<-b>} {<0>} {<37>}) ) } spids: [1007] ) ] ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<touch>} {($ Id.VSub_DollarName '$long_path')} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<allow-max-name>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<mount_image>}) (C {<check_base_iso9660_image_contents>}) ] ) ) (command.ShFunction name: o_flag_allow_max_name_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (C {<atf_test_case>} {<o_flag_isolevel_1>} {<cleanup>}) (command.ShFunction name: o_flag_isolevel_1_body body: (BraceGroup children: [ (C {<atf_expect_fail>} {(DQ <'this testcase needs work; the filenames generated seem incorrect/corrupt'>)} ) (C {<create_test_inputs>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<Id.Lit_VarLike 'isolevel='> <1>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<mount_image>}) (C {<check_base_iso9660_image_contents>}) ] ) ) (command.ShFunction name: o_flag_isolevel_1_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (C {<atf_test_case>} {<o_flag_isolevel_2>} {<cleanup>}) (command.ShFunction name: o_flag_isolevel_2_body body: (BraceGroup children: [ (C {<create_test_inputs>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<Id.Lit_VarLike 'isolevel='> <2>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<mount_image>}) (C {<check_base_iso9660_image_contents>}) ] ) ) (command.ShFunction name: o_flag_isolevel_2_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (C {<atf_test_case>} {<o_flag_isolevel_3>} {<cleanup>}) (command.ShFunction name: o_flag_isolevel_3_body body: (BraceGroup children: [ (C {<create_test_inputs>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [(command.Sentence child:(C {<true>}) terminator:<Id.Op_Semi _>)] ) action: [ (C {<atf_check>} {<-e>} {<match> <Id.Lit_Colon ':'> (SQ <'makefs: ISO Level 3 is greater than 2\\.'>)} {<-o>} {<empty>} {<-s>} {<not-exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<Id.Lit_VarLike 'isolevel='> <3>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) ] spids: [1265 1270] ) ] else_action: [ (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<Id.Lit_VarLike 'isolevel='> <3>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<mount_image>}) (C {<check_base_iso9660_image_contents>}) ] ) ] ) ) (command.ShFunction name: o_flag_isolevel_3_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (C {<atf_test_case>} {<o_flag_preparer>}) (command.ShFunction name: o_flag_preparer_head body: (BraceGroup children:[(C {<atf_set>} {(DQ <require.progs>)} {(DQ <strings>)})]) ) (command.ShFunction name: o_flag_preparer_body body: (BraceGroup children: [ (C {<create_test_dirs>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preparer) op: assign_op.Equal rhs: {(SQ <'My Very First ISO'>)} spids: [1396] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:preparer_uppercase) op: assign_op.Equal rhs: { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (C {<echo>} {($ Id.VSub_DollarName '$preparer')}) (C {<tr>} {(SQ <'[[:lower:]]'>)} {(SQ <'[[:upper:]]'>)}) ] negated: F ) ) ) } spids: [1402] ) ] ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<touch>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR') <'/dummy_file'>} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<Id.Lit_VarLike 'preparer='> (DQ ($ Id.VSub_DollarName '$preparer'))} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<match> <Id.Lit_Colon ':'> (DQ ($ Id.VSub_DollarName '$preparer_uppercase'))} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<strings>} {($ Id.VSub_DollarName '$TEST_IMAGE')} ) ] ) ) (C {<atf_test_case>} {<o_flag_publisher>}) (command.ShFunction name: o_flag_publisher_head body: (BraceGroup children:[(C {<atf_set>} {(DQ <require.progs>)} {(DQ <strings>)})]) ) (command.ShFunction name: o_flag_publisher_body body: (BraceGroup children: [ (C {<create_test_dirs>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:publisher) op: assign_op.Equal rhs: {(SQ <'My Super Awesome Publishing Company LTD'>)} spids: [1542] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:publisher_uppercase) op: assign_op.Equal rhs: { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (C {<echo>} {($ Id.VSub_DollarName '$publisher')}) (C {<tr>} {(SQ <'[[:lower:]]'>)} {(SQ <'[[:upper:]]'>)}) ] negated: F ) ) ) } spids: [1548] ) ] ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<touch>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR') <'/dummy_file'>} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<Id.Lit_VarLike 'publisher='> (DQ ($ Id.VSub_DollarName '$publisher'))} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<match> <Id.Lit_Colon ':'> (DQ ($ Id.VSub_DollarName '$publisher_uppercase'))} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<strings>} {($ Id.VSub_DollarName '$TEST_IMAGE')} ) ] ) ) (C {<atf_test_case>} {<o_flag_rockridge>} {<cleanup>}) (command.ShFunction name: o_flag_rockridge_body body: (BraceGroup children: [ (C {<create_test_dirs>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<mkdir>} {<-p>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR') <'/a/b/c/d/e/f/g/h/i/j'>} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:long_path) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$TEST_INPUTS_DIR') <'/'> (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<jot>} {<-s>} {(SQ <'/'>)} {<-b>} { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<jot>} {<-s>} {(SQ )} {<-b>} {<0>} {<64>}) ) ) } {<4>} ) ) } spids: [1718] ) ] ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<mkdir>} {<-p>} { (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<dirname>} {($ Id.VSub_DollarName '$long_path')}) ) ) } ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<touch>} {(DQ ($ Id.VSub_DollarName '$long_path'))} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<rockridge>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<mount_image>}) (C {<check_image_contents>} {<-X>} {<.rr_moved>}) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<test>} {<-d>} {($ Id.VSub_DollarName '$TEST_MOUNT_DIR') <'/.rr_moved'>} ) ] ) ) (command.ShFunction name: o_flag_rockridge_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (C {<atf_test_case>} {<o_flag_rockridge_dev_nodes>} {<cleanup>}) (command.ShFunction name: o_flag_rockridge_dev_nodes_head body: (BraceGroup children: [ (C {<atf_set>} {(DQ <descr>)} { (DQ < 'Functional tests to ensure that dev nodes are handled properly with rockridge extensions (NetBSD kern/48852; FreeBSD bug 203648)' > ) } ) ] ) ) (command.ShFunction name: o_flag_rockridge_dev_nodes_body body: (BraceGroup children: [ (C {<create_test_dirs>}) (command.Pipeline children: [ (command.Subshell child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<tar>} {<-cvf>} {<->} {<-C>} {<'/dev'>} {<null>}) (C {<touch>} {<.tar_ok>}) ] ) ) (C {<atf_check>} {<-e>} {<not-empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<tar>} {<-xvf>} {<->} {<-C>} {(DQ ($ Id.VSub_DollarName '$TEST_INPUTS_DIR'))} ) ] negated: F ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<test>} {<-c>} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR') <'/null'>} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<test>} {<-f>} {<.tar_ok>} ) (C {<atf_check>} {<-e>} {<empty>} {<-o>} {<empty>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {($ Id.VSub_DollarName '$MAKEFS')} {<-o>} {<rockridge>} {($ Id.VSub_DollarName '$TEST_IMAGE')} {($ Id.VSub_DollarName '$TEST_INPUTS_DIR')} ) (C {<mount_image>}) (C {<check_image_contents>}) ] ) ) (command.ShFunction name: o_flag_rockridge_dev_nodes_cleanup body: (BraceGroup children:[(C {<common_cleanup>})]) ) (command.ShFunction name: atf_init_test_cases body: (BraceGroup children: [ (C {<atf_add_test_case>} {<D_flag>}) (C {<atf_add_test_case>} {<F_flag>}) (C {<atf_add_test_case>} {<from_mtree_spec_file>}) (C {<atf_add_test_case>} {<from_multiple_dirs>}) (C {<atf_add_test_case>} {<from_single_dir>}) (C {<atf_add_test_case>} {<o_flag_allow_deep_trees>}) (C {<atf_add_test_case>} {<o_flag_allow_max_name>}) (C {<atf_add_test_case>} {<o_flag_isolevel_1>}) (C {<atf_add_test_case>} {<o_flag_isolevel_2>}) (C {<atf_add_test_case>} {<o_flag_isolevel_3>}) (C {<atf_add_test_case>} {<o_flag_preparer>}) (C {<atf_add_test_case>} {<o_flag_publisher>}) (C {<atf_add_test_case>} {<o_flag_rockridge>}) (C {<atf_add_test_case>} {<o_flag_rockridge_dev_nodes>}) ] ) ) ] )